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}'''
}
}
}
stage("Generate zone-files") {
steps {
echo "generate ptr-zones"
sh '''serial=$(cat ${WORKSPACE}/SWARM_GIT_NAME/tags/bind.version)
${WORKSPACE}/generate_ptr.sh 201 ${serial}
${WORKSPACE}/generate_ptr.sh 204 ${serial}
cat 201.168.192.in-addr.arpa.zone
cat 204.168.192.in-addr.arpa.zone
'''
}
}
}
post {
always {
echo "CleaningUp work directory"
deleteDir()
}
failure {
mail charset: 'UTF-8',
subject: "Jenkins build ERROR",
mimeType: 'text/html',
to: "${mailto}",
body: "ATTENTION!!!
Jenkins job failed.\n\n
Project Name: ${env.JOB_NAME}
\nBuild Number: ${env.BUILD_NUMBER}
\nURL Build: ${RUN_DISPLAY_URL}"
}
aborted {
mail charset: 'UTF-8',
subject: "Jenkins build ERROR",
mimeType: 'text/html',
to: "${client_mail}",
body: "ATTENTION!!!
Jenkins job aborted.\n\n
The CNAME ${key_name} is already exists!\n\n
Project Name: ${env.JOB_NAME}
\nBuild Number: ${env.BUILD_NUMBER}
\nURL Build: ${RUN_DISPLAY_URL}"
}
}
}