diff --git a/Jenkinsfile b/Jenkinsfile index e212c76b5..0f0dc8610 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,46 +1,28 @@ -pipeline{ - agent any - - tools{ - maven "maven3" - } - /* - triggers{ - cron("* * * * *") - } - */ - stages{ - stage("Checkout"){ - steps{ - echo "========executing checkout========" - git url:"https://github.com/A-hash-bit/spring-petclinic.git", branch:"main" - } - - } - - stage("Build"){ - steps{ - sh "mvn clean package" - } - } - stage('Docker Build') { - agent any - steps { - echo "========executing docker build========" - sh 'docker build -t amar/petclinic:latest .' - } - } - - } - post{ - always{ - echo "========always========" - } - success{ - echo "========pipeline executed successfully ========" - } - failure{ - echo "========pipeline execution failed========" - } - } +node { + def WORKSPACE = "/var/lib/jenkins/workspace/petclinic" + def dockerImageTag = "petclinic${env.BUILD_NUMBER}" + +try{ + notifyBuild('STARTED') + stage('Clone Repo') { + // for display purposes + // Get some code from a GitHub repository + git url:"https://github.com/A-hash-bit/spring-petclinic.git", branch:"main" + } + stage('Build docker') { + dockerImage = docker.build("petclinic:${env.BUILD_NUMBER}") + } + + stage('Deploy docker'){ + echo "Docker Image Tag Name: ${dockerImageTag}" + sh "docker stop petclinic || true && docker rm petclinic || true" + sh "docker run --name petclinic -d -p 8081:8081 petclinic:${env.BUILD_NUMBER}" + } +}catch(e){ + currentBuild.result = "FAILED" + throw e +}finally{ + notifyBuild(currentBuild.result) + } } +