젠킨스 선언 파이프 라인에서 빌드 이름과 설명을 설정하고 싶지만 올바른 방법을 찾을 수 없습니다. 나는 파이프 라인 다음에 환경 브래킷을 사용하고, 에이전트 브래킷 등에서 노드 브래킷을 사용하여 시도했다. 나는 항상 구문 오류가 발생한다.젠킨스 선언 파이프 라인에서 빌드 이름 및 설명 설정
는내 Jenkinsfile의 마지막 버전과 같이 간다 :
pipeline {
stages {
stage("Build") {
steps {
echo "Building application..."
bat "%ANT_HOME%/bin/ant.bat clean compile"
currentBuild.name = "MY_VERSION_NUMBER"
currentBuild.description = "MY_PROJECT MY_VERSION_NUMBER"
}
}
stage("Unit Tests") {
steps {
echo "Testing (JUnit)..."
echo "Testing (pitest)..."
bat "%ANT_HOME%/bin/ant.bat run-unit-tests"
}
}
stage("Functional Test") {
steps {
echo "Selenium..."
}
}
stage("Performance Test") {
steps {
echo "JMeter.."
}
}
stage("Quality Analysis") {
steps {
echo "Running SonarQube..."
bat "%ANT_HOME%/bin/ant.bat run-sonarqube-analysis"
}
}
stage("Security Assessment") {
steps {
echo "ZAP..."
}
}
stage("Approval") {
steps {
echo "Approval by a CS03"
}
}
stage("Deploy") {
steps {
echo "Deploying..."
}
}
}
post {
always {
junit '/test/reports/*.xml'
}
failure {
emailext attachLog: true, body: '', compressLog: true, recipientProviders: [[$class: 'CulpritsRecipientProvider'], [$class: 'DevelopersRecipientProvider']], subject: '[JENKINS] MY_PROJECT build failed', to: '...recipients...'
}
success {
emailext attachLog: false, body: '', compressLog: false, recipientProviders: [[$class: 'DevelopersRecipientProvider']], subject: '[JENKINS] MY_PROJECT build succeeded', to: '...recipients...'
}
}
}
오류는 다음과 같습니다 이상적으로
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
WorkflowScript: 11: Expected a step @ line 11, column 5.
currentBuild.name = "MY_VERSION_NUMBER"
^
WorkflowScript: 12: Expected a step @ line 12, column 5.
currentBuild.description = "MY_PROJECT MY_VERSION_NUMBER"
^
, 나는 build.properties에서 MY_PROJECT 및 MY_VERSION_NUMBER을 읽을 수 있도록하고 싶습니다 파일 또는 젠킨스 빌드 로그에서. 그 요구 사항에 대한 지침도 감사 할 것입니다.
stage("Build") {
steps {
echo "Building application..."
bat "%ANT_HOME%/bin/ant.bat clean compile"
script {
def props = readProperties file: 'build.properties'
currentBuild.displayName = "v" + props['application.version']
}
}
지금 빌드 버전이 자동으로 build.properties 파일을 읽어 파이프 라인 중에 설정됩니다
UPDATE는
내가 아래에 있던 대답은이 일을 다음 기준으로합니다.
불가사의. 고맙습니다! –