diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..903681d3 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,15 @@ +FROM schoolofdevops/carts-maven + +WORKDIR /opt/carts + +COPY . . + +RUN mvn package \ + && mv target/carts.jar /run/carts.jar \ + && rm -rf /opt/carts/* + +WORKDIR /run + +EXPOSE 80 + +CMD java -jar carts.jar --port=80 diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 00000000..e1d8d141 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,59 @@ +pipeline { + agent none + stages { + stage('Build') { + agent { + docker { + image 'schoolofdevops/carts-maven' + } + + } + steps { + echo 'Building..' + sh 'mvn compile' + } + } + + stage('Test') { + agent { + docker { + image 'schoolofdevops/carts-maven' + } + + } + steps { + echo 'Testing' + sh 'mvn test' + } + } + + stage('Package') { + agent { + docker { + image 'schoolofdevops/carts-maven' + } + + } + steps { + echo 'Packaging....' + sh 'mvn -DskipTests package' + archiveArtifacts '**/target/*.jar' + } + } + + stage('docker build and publish') { + steps { + script { + docker.withRegistry('https://index.docker.io/v1/', 'dockerlogin') { + def dockerImage = docker.build("subbu26/carts:v${env.BUILD_ID}", "./") + dockerImage.push() + dockerImage.push("latest") + + } + } + + } + } + + } +} diff --git a/mail.txt b/mail.txt new file mode 100644 index 00000000..e8556150 --- /dev/null +++ b/mail.txt @@ -0,0 +1 @@ +Hope triggers mail