Преглед на файлове

Обновить 'Jenkinsfile'

Vladimir Tomishinets преди 6 години
родител
ревизия
e7f7ac28df
променени са 1 файла, в които са добавени 22 реда и са изтрити 2 реда
  1. 22 2
      Jenkinsfile

+ 22 - 2
Jenkinsfile

@@ -8,6 +8,8 @@ pipeline {
     SWARM_GIT_URL='ssh://git@git.sdsys.ru:8022/iru/stack-deploy.git'
     SWARM_GIT_NAME='stack-deploy'
     JENKINS_MAIL='jenkins@sdsys.ru'
+    CLUSTER_DEV='dev-iru-swarm.infoclinica.lan'
+    CLUSTER_PROD='iru-swarm.infoclinica.ru'
   }
   parameters {
     string(
@@ -46,11 +48,29 @@ pipeline {
           for (String item : service_update.split()) {
             try{
               echo "Updating $item"
-              sh "docker service update $item --image ${DOCKER_REGISTRY}/iru/${DOCKER_IMAGE}:${repo}-${BUILD_NUMBER}"
+              if (repo = "prod") {
+              sh "export DOCKER_CERT_PATH=/run/secrets/swarm
+                  export DOCKER_HOST=tcp://${CLUSTER_PROD}:2376 DOCKER_TLS_VERIFY=1
+                  docker service update $item --image ${DOCKER_REGISTRY}/iru/${DOCKER_IMAGE}:${repo}-${BUILD_NUMBER}"
+              }
+              if (repo = "dev") {
+              sh "export DOCKER_CERT_PATH=/run/secrets/swarm
+                  export DOCKER_HOST=tcp://${CLUSTER_DEV}:2376 DOCKER_TLS_VERIFY=1
+                  docker service update $item --image ${DOCKER_REGISTRY}/iru/${DOCKER_IMAGE}:${repo}-${BUILD_NUMBER}"
+              }
             }
             catch(err){
               echo "Recovering service $item"
-              sh "docker service rollback $item"
+              if (repo = "prod") {
+              sh "export DOCKER_CERT_PATH=/run/secrets/swarm
+                  export DOCKER_HOST=tcp://${CLUSTER_PROD}:2376 DOCKER_TLS_VERIFY=1
+                  docker service rollback $item"
+              }
+              if (repo = "dev") {
+              sh "export DOCKER_CERT_PATH=/run/secrets/swarm
+                  export DOCKER_HOST=tcp://${CLUSTER_DEV}:2376 DOCKER_TLS_VERIFY=1
+                  docker service rollback $item"
+              }
               throw err
             }
           }