pipeline { agent none stages { stage('Debug') { agent { label 'agent-13' } steps { sh 'printenv' sh 'echo $GIT_BRANCH' sh 'echo "origin/main"' } } stage('Checkout') { when { beforeAgent true expression { return env.GIT_BRANCH =~ 'main' } } agent { label 'agent-12' } steps { checkout scm } } stage('Build') { when { beforeAgent true expression { return env.GIT_BRANCH =~ 'origin/main' } } agent { label 'agent-12' } steps { script { docker.build('trianta.dev:latest') } } } stage('Deploy') { when { beforeAgent true expression { return env.GIT_BRANCH =~ 'origin/main' } } agent { label 'agent-12' } steps { sh 'docker stop trianta.dev && docker rm trianta.dev || exit 0' sh 'docker run -d -e USER=scv -e USER_UID=1001 -e USER_GID=1001 --restart=unless-stopped -p 3466:80 --name trianta.dev trianta.dev:latest' } } stage('Test Checkout') { when { beforeAgent true expression { return ('test' == 'test') } } agent { label 'agent-13' } steps { sh 'echo $GIT_BRANCH' checkout scm } } stage('Test Build') { when { beforeAgent true expression { return env.GIT_BRANCH =~ 'origin/zzz' } } agent { label 'agent-13' } steps { script { docker.build('test.trianta.dev:latest') } } } stage('Test Deploy') { when { beforeAgent true expression { return (env.GIT_BRANCH =~ 'origin/test') } } agent { label 'agent-13' } steps { sh 'docker stop test.trianta.dev && docker rm test.trianta.dev || exit 0' sh 'docker run -d -e USER=scv -e USER_UID=1001 -e USER_GID=1001 --restart=unless-stopped -p 3466:80 --name test.trianta.dev test.trianta.dev:latest' } } } }