2017-11-08 4 views
0

배경 : 나는 해제하고 일부 특정 젠킨스 구축 작업에 대한 수중 음파 탐지기 구성을 가능하게하는 방법을 찾고 있어요jenkins 작업에 대한 음파 탐지기 구성을 사용하거나 사용하지 않도록 설정하는 방법은 무엇입니까?

. 나는 특정 작업을위한 음파 탐지기 구성을 제거하는 그루비 스크립트를 작성했다. 그러나 나의 요구 사항은 수중 음파 탐지기 구성을 비활성화하고 활성화하는 것입니다. 같은 일을 할 수 있습니까? 그렇다면 어떻게?

그루비 스크립트 :

import java.util.* 
import hudson.model.* 
import hudson.maven.* 
import hudson.maven.reporters.* 
import hudson.matrix.* 
import hudson.tasks.* 
import com.cloudbees.jenkins.plugins.customtools.* 
import com.synopsys.arc.jenkinsci.plugins.customtools.multiconfig.* 
import com.synopsys.arc.jenkinsci.plugins.customtools.versions.* 
import hudson.util.* 

hudson.model.Hudson.instance.items.findAll{job -> job.isBuildable()}.each { 
job -> 

    if (job.name.contains("SonarVerification-Groovy")) { 
    println "---------------------------------------------" 
    println(job.name) 
    sonar = job.publishersList.get(hudson.plugins.sonar.SonarPublisher.class) 
    println sonar 
    if(sonar){ 
     println "Sonar instance present" 
     job.publishersList.remove(hudson.plugins.sonar.SonarPublisher.class) 
     job.save() 
    }else{ 
     println "Sonar instance not present" 
    } 
    } 
} 

나는 우리가 자체의 젠킨스를 관리 소나 플러그인을 사용하지 않도록 설정할 수 있습니다 알고 있습니다. 하지만 Jenkins 직급에서 Sonar 구성을 비활성화해야합니다.

답변

0

빌드 매개 변수를 부울 값으로 설정하십시오.

매개 변수가 참일 때만 sonar를 실행하십시오.

매개 변수를 false로 설정하거나 그 반대 인 경우를 제외하고 항상 매개 변수를 기본값으로 설정하여 항상 sonar를 실행할 수 있습니다.

+0

답장을 보내 주셔서 감사합니다. 그러나 질문에서 언급했듯이 여러 작업에 대해 음파 탐지기 구성을 비활성화해야합니다. 매개 변수와 조건 단계를 추가하여 소나를 사용하지 않도록 설정하는 것은 큰 노력이 될 것입니다. 하지만 내가 갈 수있는 플러그인이나 그루비 스크립트가 있습니까? –