pipeline { agent any stages { stage('setup') { steps { sh 'git checkout delta' sh 'git reset --hard origin/delta' sshagent(['2e60e630-b240-4c78-87ce-cb2c33d70180']) { sh 'git fetch --prune --prune-tags' sh 'git pull --force origin delta' } sh 'git clean -fd' } } stage('test') { steps { sh './testrun.sh' logParser failBuildOnError: true, projectRulePath: 'Jenkinsparse', parsingRulesPath: 'Jenkinsparse', showGraphs: true, unstableOnWarning: true, useProjectRule: true sh 'git reset --hard' } } stage('queue') { steps { load './server_ver.groovy' sh 'git checkout master' sh 'git reset --hard origin/master' sshagent(['2e60e630-b240-4c78-87ce-cb2c33d70180']) { sh 'git fetch --prune --prune-tags' sh 'git pull --force origin master' } sh 'git clean -fd' sh 'git merge --strategy-option theirs --no-commit origin/delta' sh 'git tag -a "L$VER_MAJOR.$VER_MINOR.$VER_PATCH" -m "Automatic publish performed by Jenkins."' sh 'git commit -am "Automatically merged delta branch to master." || exit 0' sshagent(['2e60e630-b240-4c78-87ce-cb2c33d70180']) { sh 'git push origin master' sh 'git push origin --tags' } } } stage('update') { steps { load './server_ver.groovy' sh 'git checkout delta' sh 'sed -i "s/env.VER_PATCH=$VER_PATCH/env.VER_PATCH=$((VER_PATCH + 1))/" ./server_ver.groovy' sh 'git commit -am "Updated version number for next patch."' sshagent(['2e60e630-b240-4c78-87ce-cb2c33d70180']) { sh 'git push origin delta' } } } } }