From 5aa8ac30ad14106e7c2c3e7e38840ae0b7036f3c Mon Sep 17 00:00:00 2001 From: Nandini Jha Date: Wed, 17 Apr 2024 16:05:19 +0530 Subject: [PATCH 1/3] Dockerfile --- Dockerfile | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..e69de29b From 28f0e87f67db22886cce8e32462fa4fed113dc75 Mon Sep 17 00:00:00 2001 From: Nandini Jha <37576336+NandiniJha1@users.noreply.github.com> Date: Wed, 17 Apr 2024 16:06:52 +0530 Subject: [PATCH 2/3] Update Dockerfile --- Dockerfile | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Dockerfile b/Dockerfile index e69de29b..5d9d31ef 100644 --- a/Dockerfile +++ b/Dockerfile @@ -0,0 +1,8 @@ +FROM maven:3.6.3-jdk-11-slim as build +WORKDIR /opt/demo +COPY . /opt/demo +RUN mvn package -DskipTests + +FROM tomcat:jre8-openjdk-slim-buster as run +WORKDIR /usr/local/tomcat +COPY --from=build /opt/demo/target/sysfoo.war webapps/ROOT.war From 1aa2f9497474481be1884fb1dd1edd856f2660fd Mon Sep 17 00:00:00 2001 From: Nandini Jha <37576336+NandiniJha1@users.noreply.github.com> Date: Wed, 17 Apr 2024 16:49:37 +0530 Subject: [PATCH 3/3] Added Jenkinsfile --- Jenkinsfile | 41 +++++++++++++++++++++++++++++------------ 1 file changed, 29 insertions(+), 12 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 16f0de56..5c933036 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,12 +1,13 @@ pipeline { - agent { - docker { - image 'maven:3.6.3-jdk-11-slim' - } - - } + agent none stages { stage('build') { + agent { + docker { + image 'maven:3.6.3-jdk-11-slim' + } + + } steps { echo 'Compiling the code for sysfoo app' sh 'mvn compile' @@ -14,6 +15,12 @@ pipeline { } stage('Test') { + agent { + docker { + image 'maven:3.6.3-jdk-11-slim' + } + + } steps { echo 'Clean test with unit test for sysfoo' sh 'mvn clean test' @@ -23,6 +30,12 @@ pipeline { stage('Package') { parallel { stage('Package') { + agent { + docker { + image 'maven:3.6.3-jdk-11-slim' + } + + } when { branch 'master' } @@ -33,20 +46,24 @@ pipeline { } stage('TestA') { + agent any steps { sleep(time: 5, unit: 'SECONDS') + script { + docker.withRegistry('https://index.docker.io/v1/', 'dockerlogin') { + def dockerImage = docker.build("nandini176/sysfoo:v${env.BUILD_ID}", "./") + dockerImage.push() + dockerImage.push("latest") + dockerImage.push("dev") + } + } + } } } } - stage('TestB') { - steps { - sleep 3 - } - } - } post { always {