From fb8ba3765d153d496a3a257dcfc4af70811b8568 Mon Sep 17 00:00:00 2001 From: Jim Van Fleet Date: Wed, 27 Jul 2016 12:39:10 -0400 Subject: [PATCH] Example is push-enabled --- Jenkinsfile.sample | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile.sample b/Jenkinsfile.sample index aead388..4e56680 100644 --- a/Jenkinsfile.sample +++ b/Jenkinsfile.sample @@ -1,5 +1,5 @@ node { - + stage 'Checkout' checkout scm @@ -13,8 +13,19 @@ node { sh 'ls' sh 'mv bin/* .' } - - stage 'Base' + + stage 'Build' + + def maintainer = maintainer() + def imagename = imagename() + def tag = env.BRANCH_NAME + if(!imagename){ + echo "You must define an imagename in common.bash" + currentBuild.result = 'FAILURE' + } + if(maintainer){ + echo "Building ${maintainer}:${tag} for ${maintainer}" + } sh 'bin/build.sh' @@ -22,5 +33,22 @@ node { sh 'bin/test.sh' + stage 'Push' + + docker.withRegistry('https://registry.hub.docker.com/', 'dockerhub-bigfleet') { + def baseImg = docker.build("$maintainer/$imagename") + baseImg.push("$tag") + } + + +} + +def maintainer() { + def matcher = readFile('common.bash') =~ 'maintainer="(.+)"' + matcher ? matcher[0][1] : 'tier' +} +def imagename() { + def matcher = readFile('common.bash') =~ 'imagename="(.+)"' + matcher ? matcher[0][1] : null } \ No newline at end of file