diff --git a/Jenkinsfile b/Jenkinsfile index 802f5fb2c..e446da6a2 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,16 +1,49 @@ -#!groovy pipeline { - agent none + + environment { + dockerimagename = "bravinwasike/react-app" + dockerImage = "" + } + + agent any + stages { - stage('Maven Install') { - agent { - docker { - image 'maven:3.5.0' - } - } + + stage('Checkout Source') { steps { - sh 'mvn clean install' + git 'https://github.com/Bravinsimiyu/jenkins-kubernetes-deployment.git' } } + + stage('Build image') { + steps{ + script { + dockerImage = docker.build dockerimagename + } + } + } + + stage('Pushing Image') { + environment { + registryCredential = 'dockerhub-credentials' + } + steps{ + script { + docker.withRegistry( 'https://registry.hub.docker.com', registryCredential ) { + dockerImage.push("latest") + } + } + } + } + + stage('Deploying React.js container to Kubernetes') { + steps { + script { + kubernetesDeploy(configs: "deployment.yaml", "service.yaml") + } + } + } + } + }