如何解决如果重播或重新运行,Jenkins管道仅运行1个阶段进行回滚
我有一个类似于下面的Jenkinsfile来自动进行git pull:
pipeline {
agent any
}
stages {
stage("Code Checkout") {
steps {
script {
notifyBuild('STARTED')
if (env.BRANCH_NAME == 'test') {
checkout scm
} else if (env.BRANCH_NAME == 'production') {
checkout scm
} else {
sh 'echo \"environment server not match\" && exit 1'
}
}
}
}
stage("Deploy") {
steps {
script {
if (env.BRANCH_NAME == 'test') {
sh 'ssh root@192.168.1.1 "cd /var/www/html/laravel && git pull origin \$BRANCH_NAME"'
} else if (env.BRANCH_NAME == 'production') {
sh 'ssh root@192.168.1.2 "cd /var/www/html/laravel && git pull origin \$BRANCH_NAME"'
} else {
sh 'echo \"environment server not match\" && exit 1'
}
}
}
}
然后,我想使用git reset --hard $ GIT_COMMIT命令为回滚添加一个阶段。
我希望此阶段仅在重播或重新运行期间运行..当用户单击重新运行或重播时,仅执行此阶段..部署阶段和其他阶段被跳过。怎么做?
请帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。