작업이 완료된 후 이메일을 통해 전송 된 빌드 번호를 변경하는 방법이 있습니까? 문제는 제품 빌드가 Jenkins에 의해 수행되지 않기 때문에 빌드 번호 (예 : 텍스트 파일)를 가져 와서 Jenkins에서 빌드 번호를 업데이트하여 일치시킬 수 있다는 것입니다. 빌드 번호를 설정하려고했습니다.
set BUILD_NUMBER=45
그러나 이메일에는 여전히 Jenkins가 처음 설정 한 빌드 번호가 표시됩니다.
답변
스크립트 콘솔 (Jenkins 관리-> 스크립트 콘솔)에 액세스 할 수있는 경우 다음을 수행 할 수 있습니다.
Jenkins.instance.getItemByFullName("YourJobName").updateNextBuildNumber(45)
답변
플러그인으로 수행 할 수 있습니다 :
https://wiki.jenkins-ci.org/display/JENKINS/Next+Build+Number+Plugin
자세한 정보 :
http://www.alexlea.me/2010/10/howto-set-hudson-next-build-number.html
플러그인이 마음에 들지 않는 경우 :
nextBuildNumber 파일을 통해 빌드 번호를 변경하려면 “Jenkins 관리”페이지에서 “디스크에서 구성 다시로드”를 수행해야합니다.
답변
작업 작업 공간 폴더에서 다음과 같이 :
C:\Program Files (x86)\Jenkins\jobs\job_name
라는 파일이 nextBuildNumber
있습니다.
파일에서 빌드 번호를 설정하고 디스크에서 구성을 다시로드하면 (Jenkins 관리 메뉴) 다음 빌드에서 파일의 값을 BUILD_NUMBER로 설정합니다.
답변
예를 들어 git flow 를 사용하여 슬래시를 포함 하는 분기 이름이있는 경우, 분기 이름 내에서 슬래시 를 유니 코드 문자 % 2F 로 바꿔야합니다 .
다음은 파이프 라인 My-Pipeline-Name 및 분기 릴리스 / my-release-branch-name의 예입니다.
Jenkins.instance.getItemByFullName("My-Pipeline-Name/release%2Fmy-release-branch-name").updateNextBuildNumber(BUILD_NUMBER)
파이프 라인에 대한 다른 작업 (분기)을 나열하는 다음 명령을 실행하여 이것에 대해 알 수있었습니다.
Jenkins.instance.getItem("My-Pipeline-Name").getAllJobs()
도움이 되길 바랍니다.
답변
아마도이 플러그인들의 조합이 유용 할 것입니다 :
- 매개 변수화 된 빌드 플러그인 -빌드 번호를 보유한 변수 정의
- 버전 번호 플러그인 -변수를 사용하여 빌드 번호를 변경하십시오.
- 빌드 이름 설정 기 플러그인 -변수를 사용하여 빌드 번호를 변경하십시오.
답변
Jenkins 서버에서 $ {JENKINS_HOME} / jobs / job_name / nextBuildNumber 파일을 업데이트하여 빌드 번호를 변경할 수 있습니다.
CLI 또는 UI를 사용하여 빌드 번호를 변경하기 위해 플러그인 Next Build Number 플러그인 을 설치할 수도 있습니다
답변
환경 변수를 사용하여 :
$BUILD_NUMBER =4