diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..8964465d --- /dev/null +++ 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 \ No newline at end of file diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 00000000..ec764782 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,72 @@ +pipeline { + agent none + stages { + stage('build') { + agent { + docker { + image 'maven:3.6.3-jdk-11-slim' + } + + } + steps { + echo 'Compiling' + sh 'mvn compile' + } + } + + stage('test') { + agent { + docker { + image 'maven:3.6.3-jdk-11-slim' + } + + } + steps { + echo 'Testing...' + sh 'mvn test' + } + } + + stage('package') { + agent { + docker { + image 'maven:3.6.3-jdk-11-slim' + } + + } + steps { + echo 'Packaging...' + sh 'mvn package -DskipTests' + archiveArtifacts 'target/*.war' + } + } + + stage('Docker BnP.') { + agent any + steps { + script { + docker.withRegistry('https://index.docker.io/v1/', 'dockerlogin') { + def dockerImage = docker.build("ankitpangasa/sysfoo:v${env.BUILD_ID}", "./") + dockerImage.push() + dockerImage.push("latest") + dockerImage.push("dev") + } + } + + } + } + + } + tools { + maven 'Maven 3.6.3' + } + post { + always { + echo 'This pipeline is completed..' + } + + } + triggers { + pollSCM('H/2 * * * *') + } +} \ No newline at end of file diff --git a/README.md b/README.md index 38a78cde..29a7df3b 100644 --- a/README.md +++ b/README.md @@ -1 +1,4 @@ -This is a Sample Maven App. +This is a Sample Maven App. + +Dummy checkin to check polling +This is a sample app