diff --git a/dockerfile b/dockerfile new file mode 100644 index 0000000..825188d --- /dev/null +++ b/dockerfile @@ -0,0 +1,13 @@ +#Maintainer of this image +LABEL Maintainer="Hemanth" + +#Copying jar file from target folder +COPY target/web-services.jar web-services.jar + +#Expose app to outer world on this port + +Expose 8081 + +#Run executable with this command +ENTRYPOINT ["java", "-jar", "practice-project1.jar"] +root@ :/var/lib/jenkins/workspace/practice-project1.jar# cd diff --git a/jenkinsfile b/jenkinsfile new file mode 100644 index 0000000..bc2d3ab --- /dev/null +++ b/jenkinsfile @@ -0,0 +1,73 @@ +pipeline { + agent any + + environment { + //imagename = "kumar083/JavaCalculator/mytest:latest" + DOCKERHUB_CREDENTIALS=credentials('docker_hub') + REMOTE_USER='ubuntu' + REMOTE_SERVER='35.88.136.192' + + } + + stages { + stage('checkout'){ + steps { + echo "its a cloning stage" + git branch: 'main', url: 'https://github.com/kumar083/JavaCalculator.git' + } + } + stage('build') { + steps { + echo "build stage" + sh '/opt/maven/bin/mvn clean package' + } + post { + success { + archiveArtifacts artifacts: '**/target/*.jar' + } + } + } + + stage('docker_image') { + steps { + echo "building docker image " + //sh 'docker build -t mytest .' + //sh 'docker tag mywebapp kumar083/mytest:latest' + sh 'docker build -t kumar083/mytest:$BUILD_NUMBER .' + } + } + /*stage('Push'){ + steps{ + withCredentials([usernamePassword(credentialsId: 'docker_hub', passwordVariable: 'dockerHubPassword', usernameVariable: 'dockerHubUser')]) { + sh "docker login -u ${env.dockerHubUser} -p ${env.dockerHubPassword}" + sh 'docker push mywebapp kumar083/mytest:latest' + } + } + }*/ + + stage('Docker Login') { + steps{ + sh 'echo $DOCKERHUB_CREDENTIALS_PSW | docker login -u $DOCKERHUB_CREDENTIALS_USR --password-stdin' + } + } + + stage('uplaod') { + steps { + sh 'docker push kumar083/mytest:$BUILD_NUMBER' + } + } + + + stage('deploy') { + steps { + sshagent(['aws_login']) { + sh "ssh -o StrictHostKeyChecking=no ${REMOTE_USER}@${REMOTE_SERVER} 'docker stop mytest || true && docker rm mytest || true'" + sh "ssh -o StrictHostKeyChecking=no ${REMOTE_USER}@${REMOTE_SERVER} 'docker pull kumar083/mytest:$BUILD_NUMBER'" + sh "ssh -o StrictHostKeyChecking=no ${REMOTE_USER}@${REMOTE_SERVER} 'docker run --name mytest -d -p 8081:8081 kumar083/mytest:$BUILD_NUMBER'" + + } + } + } + + } +} diff --git a/src/main/java/com/ravi/cal/RaviCalculator/Calculator.java b/src/main/java/com/ravi/cal/RaviCalculator/Calculator.java index 092af4b..10406c5 100644 --- a/src/main/java/com/ravi/cal/RaviCalculator/Calculator.java +++ b/src/main/java/com/ravi/cal/RaviCalculator/Calculator.java @@ -30,7 +30,7 @@ public long subFucn(long first, long second){ public long mulFucn(long first, long second){ - return first*second; + return first/second; }