From efd113b9ded241b7d022b7a8b91602d3589333a9 Mon Sep 17 00:00:00 2001 From: Dominik Chilla Date: Fri, 14 Jun 2019 22:50:17 +0200 Subject: [PATCH] Jenkins scripted multibranch pipeline --- Jenkinsfile.declarative.multibranch | 54 +++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 Jenkinsfile.declarative.multibranch diff --git a/Jenkinsfile.declarative.multibranch b/Jenkinsfile.declarative.multibranch new file mode 100644 index 0000000..ba6b9c7 --- /dev/null +++ b/Jenkinsfile.declarative.multibranch @@ -0,0 +1,54 @@ +pipeline { + agent any + + parameters { + string defaultValue: 'https', name: 'dockerRegistryScheme', trim: true + string defaultValue: 'change.me', name: 'dockerRegistryRepo', trim: true + } + + environment { + dockerImage = '' + imageName = 'sos-milter' + } + + stages { + stage('Build image') { + steps { + sh '/usr/bin/env' + script { + dockerImage = docker.build( + "${env.imageName}:${env.BRANCH_NAME}", + "--pull --label BUILD_URL=${env.BUILD_URL} ." + ) + } + } + } + stage('Test image') { + steps { + script { + dockerImage.inside { + sh 'echo "INSIDE CONTAINER!"' + sh '/usr/bin/env' + sh '/bin/ps auxwwf' + } + } + } + } + stage('Push image') { + steps { + script { + docker.withRegistry("${env.dockerRegistryScheme}://${env.dockerRegistryRepo}") { + dockerImage.push() + } + } + } + } + stage('Cleanup') { + steps { + sh '/usr/bin/docker rmi -f "${imageName}:${BRANCH_NAME}"' + sh '/usr/bin/docker rmi -f "${dockerRegistryRepo}/${imageName}:${BRANCH_NAME}"' + } + } + } +} +