pipeline { agent any options { buildDiscarder logRotator(artifactDaysToKeepStr: '', artifactNumToKeepStr: '5', daysToKeepStr: '', numToKeepStr: '5') } stages { stage('Develop Branch Deploy Code') { when { branch 'develop' } environment { github_branch = "develop" dockerimagename = "devteambflows/gepafin-api-dev" dockerImage = "" registryCredential = 'dockerhublogin' } steps { git branch: "${github_branch}", url: 'https://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@github.com/Kitzanos/GEPAFIN-BE.git' script { sh '/usr/share/maven/bin/mvn clean install -Dmaven.test.skip=true -Dspring.profiles.active=dev' } script { dockerImage = docker.build dockerimagename } script { docker.withRegistry('https://registry.hub.docker.com', registryCredential) { dockerImage.push("latest") } } script { sh 'ssh ubuntu@jenkins-server1.bflows.ai "sh gepafin-dev-api.sh"' } } } stage('Production Branch Deploy Code') { when { branch 'master' } environment { github_branch = "master" dockerimagename = "devteambflows/gepafin-api-production" dockerImage = "" registryCredential = 'dockerhublogin' } steps { git branch: "${github_branch}", url: 'https://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@github.com/Kitzanos/GEPAFIN-BE.git' script { sh '/usr/share/maven/bin/mvn clean install -Dmaven.test.skip=true -Dspring.profiles.active=production' } script { dockerImage = docker.build dockerimagename } script { docker.withRegistry('https://registry.hub.docker.com', registryCredential) { dockerImage.push("latest") } } script { sh 'ssh ubuntu@79.137.88.15 "sh gepafin-production-api.sh"' } } } } }