젠킨스 파이프 라인을 코드로 작성하려고합니다. Github 조직 폴더 플러그인을 사용하여 Github 조직을 검색하고 분기별로 작업을 만듭니다. Jenkinsfile에서 가져 오는 파이프 라인 작업의 이름을 명시 적으로 정의하는 방법이 있습니까? 또한 작업에 대한 설명을 추가하고 싶습니다.젠킨스 파일에서 파이프 라인 이름과 설명을 설정하십시오.
답변
아래와 같이 currentBuild
을 사용해야합니다. node
부분은 중요한
node {
currentBuild.displayName = "$yournamevariable-$another"
currentBuild.description = "$yourdescriptionvariable-$another"
}
편집입니다 하나는 원래의 질문으로 작업을 이름 변경에 대해 어디 구축의 이름을 바꿉니다 위. 파이프 라인의 다음 스크립트는 내가 Jenkinsfile 내 젠킨스 파이프 라인을 설명하기 위해 허용 대답에서 코드를 사용하려고
item = Jenkins.instance.getItemByFullName("originalJobName")
item.setDescription("This description was changed by script")
item.save()
item.renameTo("newJobName")
안녕 Jayan, 감사합니다. 댓글. 이미 currentBuild.description 옵션을 시도했습니다. 빌드 이력 섹션의 빌드 번호 아래에 태그로 나타났습니다. 그러나 작업에 대한 "구성보기"옵션 아래에 표시되도록 설정하려고합니다. 그게 가능하니? – HarshaB
플러그인 옵션에서 방법을 찾지 못했습니다. 위 답변은 renameTo api (이미 보셨을 수도 있습니다)를 사용하도록 업데이트되었습니다. – Jayan
대단히 감사합니다. Jayan. 그것은 매력처럼 작용했습니다. 정확히 내가 원했던 것. 젠킨스 (Jenkins) -> In-Process 스크립트 승인하에 스크립트를 승인함으로써 스크립트가 실행되도록 허용해야했습니다. 여기에 승인하에 새 클래스를 수동으로 추가하는 방법이 있습니까? 내가 지금했던 방법은 내가이 스크립트에서 한 번에 하나씩 사용했던 클래스에 대한 승인 옵션을 선택하는 것이 었습니다. 그것은 어떤 수업도 수동으로 입력하고 승인하는 것을 허락하지 않았습니다. – HarshaB
(이 적절한 권한 필요) 그렇게 할 것입니다. 코드 스 니펫을 @NonCPS
주석으로 묶고 def 변수에 항목을 사용해야했습니다. 노드 섹션이 아닌 Jenkinsfile의 루트에 코드 스 니펫을 배치했습니다.
@NonCPS
def setDescription() {
def item = Jenkins.instance.getItemByFullName(env.JOB_NAME)
item.setDescription("Some description.")
item.save()
}
setDescription()
나는이 일에 파티에 늦었어요,하지만 난 오늘 내 하루의 대부분을 보낸 곳이 질문은 채팅 #jenkins에서 저를 강요했다. 제 상황에 대해이 문제를 해결할 수 있도록 채팅에서 @ tang ^님께 감사드립니다. 개별 스크립트를 통해 호출
steps {
script {
if(currentBuild.rawBuild.project.displayName != 'jobName') {
currentBuild.rawBuild.project.description = 'NEW JOB DESCRIPTION'
currentBuild.rawBuild.project.setDisplayName('NEW JOB DISPLAY NAME')
}
else {
echo 'Name change not required'
}
}
}
이것은 당신이 승인 할 것을 요구합니다 :
다음 단계는 단계에서 차단 사용하는 여러 가지 선언적 파이프 라인에 아이에 대한 작업 설명 및 작업 표시 이름을 설정하려면 Jenkins 샌드 박스 승인 방법을 사용했지만 부모 파이프 라인의 실제 하위 항목 이름 바꾸기에 대해 웹에서 찾은 것보다 훨씬 간단했습니다. 마지막으로주의해야 할 것은 Jenkinsfile에서 작동해야 환경 변수를 사용하여 설정할 작업 항목을 조작 할 수 있다는 것입니다.
Jenkinsfile에서 발췌 문장을 표시 할 수 있습니까? – Jayan
빌드 설명이 아닌 작업/프로젝트 설명을 변경하려는 사용자는 https://stackoverflow.com/questions/39200948/jenkins-multibranch-change-job-description-from-groovy – Mark