From 9a1c57ba4b1d0629605417c0b164eddd267a7e2d Mon Sep 17 00:00:00 2001 From: Raaj27 Date: Thu, 27 Dec 2018 12:52:23 +0530 Subject: [PATCH 1/4] Update Jenkinsfile --- cicd/Jenkinsfile | 64 +++++++++++++++++++++++++++++++++--------------- 1 file changed, 44 insertions(+), 20 deletions(-) diff --git a/cicd/Jenkinsfile b/cicd/Jenkinsfile index 352993b..4fc0770 100644 --- a/cicd/Jenkinsfile +++ b/cicd/Jenkinsfile @@ -3,24 +3,48 @@ node { stage('Checkout git repo') { git branch: 'master', url: params.git_repo } - stage('Build and push Docker image') { - sh(script: "docker login ${registry_url} -u ${acr_username} -p ${acr_password}", returnStdout: true) - sh(script: "docker build -t ${registry_url}/customersapi:${BUILD_NUMBER} -f src/CustomersAPI/Dockerfile .", returnStdout: true) - sh(script: "docker push ${registry_url}/customersapi:${BUILD_NUMBER}", returnStdout: true) - sh(script: "docker build -t ${registry_url}/customersmvc:${BUILD_NUMBER} -f src/CustomersMVC/Dockerfile .", returnStdout: true) - sh(script: "docker push ${registry_url}/customersmvc:${BUILD_NUMBER}", returnStdout: true) + +stage('Build Docker Image') { + when { + branch 'master' + } + steps { + script { + app = docker.build(DOCKER_IMAGE_NAME) + app.inside { + sh 'echo Hello, World!' + } + } + } + } + stage('Push Docker Image') { + when { + branch 'master' + } + steps { + script { + docker.withRegistry('https://registry.hub.docker.com', 'dockerhub') { + app.push("${env.BUILD_NUMBER}") + app.push("latest") + } + } + } + } + + + stage('DeployToProduction') { + when { + branch 'master' + } + steps { + input 'Deploy to Production?' + milestone(1) + //implement Kubernetes deployment here + kubernetesDeploy( + kubeconfigId: 'kubeconfig', + configs: 'train-schedule-kube.yml', + enableConfigSubstitution: true + ) + } + } } - stage('Unit Tests') { - sh 'echo test' - } - stage('Browser Tests'){ - parallel( - "Edge":{sh 'echo test'}, - "Firefox":{sh 'echo test'}, - "Chrome":{sh 'echo test'} - ) - } - stage('Deploy into k8s') { - sh(script: "cat cicd/k8s.yaml | sed -e 's/build_number/${BUILD_NUMBER}/g' -e 's/YourACRName/${acr_username}/g' | kubectl apply -f - --kubeconfig /var/lib/jenkins/.kube/config", returnStdout: true) - } -} \ No newline at end of file From 40ca74081f39fa2599ce25bea5c4405179c4c1df Mon Sep 17 00:00:00 2001 From: Raaj27 Date: Thu, 27 Dec 2018 12:57:37 +0530 Subject: [PATCH 2/4] Update k8s.yaml --- cicd/k8s.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cicd/k8s.yaml b/cicd/k8s.yaml index 6543df2..5e6eb69 100644 --- a/cicd/k8s.yaml +++ b/cicd/k8s.yaml @@ -23,7 +23,7 @@ spec: # Kubernetes doesn't allow parameterized manifests, so this is a placeholder # that our deploy.ps1 script will replace at runtime # (since the image will depend on which container registry is being used) - image: YourACRName.azurecr.io/customersapi:build_number + image: $DOCKER_IMAGE_NAME:$BUILD_NUMBER imagePullPolicy: Always ports: - containerPort: 80 @@ -58,7 +58,7 @@ spec: - name: regsecret containers: - name: customersmvc - image: YourACRName.azurecr.io/customersmvc:build_number + image: $DOCKER_IMAGE_NAME:$BUILD_NUMBER imagePullPolicy: Always ports: - containerPort: 80 From 3af6549ae99452c379b8dba9c46d2cc4b0b8067b Mon Sep 17 00:00:00 2001 From: Raaj27 Date: Thu, 27 Dec 2018 12:58:22 +0530 Subject: [PATCH 3/4] Update Jenkinsfile --- cicd/Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cicd/Jenkinsfile b/cicd/Jenkinsfile index 4fc0770..50ef778 100644 --- a/cicd/Jenkinsfile +++ b/cicd/Jenkinsfile @@ -42,7 +42,7 @@ stage('Build Docker Image') { //implement Kubernetes deployment here kubernetesDeploy( kubeconfigId: 'kubeconfig', - configs: 'train-schedule-kube.yml', + configs: 'k8s.yml', enableConfigSubstitution: true ) } From 2daf4250a716da36393387a7df24b768f2d29542 Mon Sep 17 00:00:00 2001 From: Raaj27 Date: Thu, 27 Dec 2018 13:00:55 +0530 Subject: [PATCH 4/4] Update Jenkinsfile --- cicd/Jenkinsfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cicd/Jenkinsfile b/cicd/Jenkinsfile index 50ef778..481a112 100644 --- a/cicd/Jenkinsfile +++ b/cicd/Jenkinsfile @@ -1,12 +1,12 @@ node { def built_img = '' stage('Checkout git repo') { - git branch: 'master', url: params.git_repo + git branch: 'test', url: params.git_repo } stage('Build Docker Image') { when { - branch 'master' + branch 'test' } steps { script { @@ -19,7 +19,7 @@ stage('Build Docker Image') { } stage('Push Docker Image') { when { - branch 'master' + branch 'test' } steps { script { @@ -34,7 +34,7 @@ stage('Build Docker Image') { stage('DeployToProduction') { when { - branch 'master' + branch 'test' } steps { input 'Deploy to Production?'