From 6a33d031a19a9206b2d6d952b03a1e78bd74277f Mon Sep 17 00:00:00 2001 From: Rene Cordier Date: Fri, 25 Feb 2022 15:37:52 +0700 Subject: [PATCH] Add a Jenkinsfile for web app docker build and push --- Jenkinsfile | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 000000000..af34edf18 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,41 @@ +pipeline { + agent any + + options { + // Configure an overall timeout for the build. + timeout(time: 1, unit: 'HOURS') + disableConcurrentBuilds() + } + + stages { + stage('Deliver web Docker image') { + when { + anyOf { + branch 'master' + branch 'release' + buildingTag() + } + } + steps { + script { + env.DOCKER_TAG = 'master' + if (env.TAG_NAME) { + env.DOCKER_TAG = env.TAG_NAME + } else { + env.DOCKER_TAG = env.BRANCH_NAME + } + + echo "Docker tag: ${env.DOCKER_TAG}" + + // Build image + sh "docker build -t linagora/tmail-web:${env.DOCKER_TAG} ." + + def webImage = docker.image "linagora/tmail-web:${env.DOCKER_TAG}" + docker.withRegistry('', 'dockerHub') { + webImage.push() + } + } + } + } + } +} \ No newline at end of file