二种方式获取:
1、 ${active_profile}
2、env.active_profile
1、全局赋值
env.Imgtag=xxx
2、局部赋值
stage 中 def Imgtag = env.active_profile == 'xc' ? '-arm64' : ''
完整案例
pipeline {
agent {
docker {
image 'reg.xxx.com/library/arm64/maven-arm64:3.5.3'
args '-v /root/.m2:/root/.m2 -v /usr/bin/docker:/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/kubectl:/usr/bin/kubectl'
label 'arm64'
}
}
stages {
stage('Initialization') {
steps {
script {
env.Imgtag = env.active_profile == 'xc' ? 'arm64' : env.active_profile
echo "Value of myVar: ${Imgtag}"
}
}
}
stage('build') {
steps {
sh 'mvn clean package -U -P ${active_profile}'
}
}
stage('deploy') {
steps {
withCredentials([usernamePassword(credentialsId: 'harbor-xxx', passwordVariable: 'HPASSWD', usernameVariable: 'HUSER')]) {
sh '''
docker build --build-arg BASE_IMAGE=reg.xxx.com/library/arm64/openjdk:8u332-nc -f Dockerfile -t reg.xxx.com/dev/ats-${Imgtag}:1.0 .
docker login reg.xxx.com -u $HUSER -p $HPASSWD
docker push reg.xxx.com/dev/ats-${Imgtag}:1.0
'''
}
}
}
}
}
![](https://i-blog.csdnimg.cn/direct/1dfc909af0844492be9720de6b3db035.png)