Explorar o código

Обновить 'Jenkinsfile'

Vladimir Tomishinets %!s(int64=6) %!d(string=hai) anos
pai
achega
3b1c040ddd
Modificáronse 1 ficheiros con 54 adicións e 0 borrados
  1. 54 0
      Jenkinsfile

+ 54 - 0
Jenkinsfile

@@ -0,0 +1,54 @@
+pipeline {
+  agent {
+    label "swarm"
+  }
+  environment {
+    DOCKER_REGISTRY='dev-registry.infoclinica.ru:5000'
+    DOCKER_IMAGE='bind'
+    SERVICE_NAME='bind'
+    SWARM_GIT_URL='ssh://git@git.sdsys.ru:8022/iru/stack-deploy.git'
+    SWARM_GIT_NAME='stack-deploy'
+    OVPN_GIT_URL='ssh://git@git.sdsys.ru:8022/iru/openvpn.git'
+    OVPN_GIT_NAME='openvpn'
+    BIND_GIT_URL='ssh://git@git.sdsys.ru:8022/sdsys/bind.git'
+    JENKINS_MAIL='jenkins.dev@sdsys.ru'
+    SMTP_SERVER='mail.sdsys.ru'
+
+  }
+  stages {
+    stage("PULL REPOs") {
+      steps {
+        echo "Pull repo ${SWARM_GIT_NAME}"
+        withCredentials([sshUserPrivateKey(credentialsId: 'provision', keyFileVariable: 'GIT_SSH_KEY', passphraseVariable: '', usernameVariable: 'GIT_SSH_USERNAME')]) {
+          sh '''GIT_SSH_COMMAND='ssh -i ${GIT_SSH_KEY} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' \
+                git clone ${SWARM_GIT_URL}'''
+        }
+        echo "Pull repo ${OVPN_GIT_NAME}"
+        withCredentials([sshUserPrivateKey(credentialsId: 'provision', keyFileVariable: 'GIT_SSH_KEY', passphraseVariable: '', usernameVariable: 'GIT_SSH_USERNAME')]) {
+          sh '''GIT_SSH_COMMAND='ssh -i ${GIT_SSH_KEY} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' \
+                git clone ${OVPN_GIT_URL}'''
+        }
+      }
+    }
+  }
+  post {
+    always {
+      echo "CleaningUp work directory"
+      deleteDir()
+    }
+    failure {
+      mail charset: 'UTF-8',
+           subject: "Jenkins build ERROR",
+           mimeType: 'text/html',
+           to: "${mailto}",
+           body: "<b>ATTENTION!!!</b> <b><br> Jenkins job failed.\n\n <b><br>Project Name:</b> ${env.JOB_NAME} <b><br>\nBuild Number:</b> ${env.BUILD_NUMBER} <b><br>\nURL Build:</b> ${RUN_DISPLAY_URL}"
+    }
+    aborted {
+      mail charset: 'UTF-8',
+           subject: "Jenkins build ERROR",
+           mimeType: 'text/html',
+           to: "${client_mail}",
+           body: "<b>ATTENTION!!!</b> <b><br> Jenkins job aborted.\n\n <b><br> The CNAME ${key_name} is already exists!\n\n <b><br>Project Name:</b> ${env.JOB_NAME} <b><br>\nBuild Number:</b> ${env.BUILD_NUMBER} <b><br>\nURL Build:</b> ${RUN_DISPLAY_URL}"
+    }
+  }
+}