我有一个类似于下面的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命令为回滚添加一个阶段。
我希望此阶段仅在重播或重新运行期间运行..当用户单击重新运行或重播时,仅执行此阶段..部署阶段和其他阶段被跳过。怎么做?
请帮助。