pipeline { agent { label "swarm" } environment { DOCKER_REGISTRY='dev-registry.infoclinica.ru:5000' DOCKER_IMAGE='ovpn' SERVICE_IMAGE='container_run' SERVICE_NAME='ovpn' SWARM_GIT_URL='ssh://git@git.sdsys.ru:8022/iru/stack-deploy.git' SWARM_GIT_NAME='stack-deploy' PKI_GIT_URL='ssh://git@git.sdsys.ru:8022/iru/openvpn-pki.git' PKI_GIT_NAME='openvpn-pki' GOST_GIT_DIR='openvpn' JENKINS_MAIL='jenkins@sdsys.ru' CLUSTER_NAME='dev-iru-swarm.infoclinica.lan' } parameters { string( name: "repo", defaultValue: "prod", description: "Repository to build and/or deploy from." ) string( name: "mailto", defaultValue: "tomishinets.v@sdsys.ru", description: "Email which has to be notified." ) } stages { stage("Pull PKI repo") { steps { 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 ${PKI_GIT_URL} ''' } sh '''cp ${WORKSPACE}/openvpn-pki/open/easy-rsa/keys/ca.crt \ ${WORKSPACE}/openvpn-pki/open/easy-rsa/keys/server.crt \ ${WORKSPACE}/openvpn-pki/open/easy-rsa/keys/server.key \ ${WORKSPACE}/openvpn-pki/open/easy-rsa/keys/sds-zub.ru.crt \ ${WORKSPACE}/openvpn-pki/open/easy-rsa/keys/sds-zub.ru.key \ ${WORKSPACE}/openvpn-pki/open/easy-rsa/keys/ta.key \ ${WORKSPACE}/openvpn-pki/open/easy-rsa/keys/stonevpn.crl \ ${WORKSPACE}/openvpn-pki/open/easy-rsa/keys/dh2048.pem \ ${WORKSPACE}/openvpn/keys ls -al ${WORKSPACE}/openvpn/keys/ ''' } } stage("Build") { steps { echo "Building ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:${BUILD_NUMBER}." sh "docker build --no-cache -t ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:${BUILD_NUMBER} ." /* echo "Running ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:latest." withCredentials([sshUserPrivateKey(credentialsId: 'provision', keyFileVariable: 'GIT_SSH_KEY', passphraseVariable: '', usernameVariable: 'GIT_SSH_USERNAME')]) { sh '''set +x docker run -i --rm -e TZ=Europe/Moscow -e "mode=keygen" -e "SSHKEY=$(cat ${GIT_SSH_KEY})" \ -e git_url_pki=ssh://git@git.sdsys.ru:8022/iru/openvpn-pki.git \ -e git_url_ovpn=ssh://git@git.sdsys.ru:8022/iru/openvpn.git \ ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:${BUILD_NUMBER} sleep 1d ''' } */ } } } post { always { deleteDir() } } }