#!/usr/bin/env groovy pipeline { agent { label 'executor-v2' } options { timestamps() buildDiscarder(logRotator(numToKeepStr: '30')) } stages { stage('Test') { steps { milestone(1) sh './test.sh' junit 'spec/reports/*.xml' junit 'features/reports/*.xml' } } // Only publish to RubyGems if branch is 'master' stage('Publish to RubyGems?') { agent { label 'releaser' } when { branch 'master' } steps { sh './publish.sh' // Clean up sh 'docker run -i --rm -v $PWD:/src -w /src alpine/git clean -fxd' deleteDir() } } } post { always { cleanupAndNotify(currentBuild.currentResult) } } }