40 lines
1.2 KiB
Groovy
40 lines
1.2 KiB
Groovy
node('docker') {
|
|
def dockerfile = 'Dockerfile'
|
|
def app_name = 'sslproxy'
|
|
def app_port = '80'
|
|
def workdir = 'dockerfiles/services/sslproxy'
|
|
|
|
stage('prepare') {
|
|
git credentialsId: 'f1f58215-c789-44a2-9b72-50e4425cb061', url: 'ssh://git@git.xai-corp.net:10022/xai-corp.net/provisioning.git'
|
|
//checkout scm
|
|
sh 'ls'
|
|
}
|
|
|
|
stage('build') {
|
|
dir(workdir) {
|
|
docker.withRegistry('http://dkregistry.xai-corp.net:5000', credentialsId: 'b11d7f1a-81ac-4daf-8842-56afc0d2370e') {
|
|
def customImage = docker.build("dkregistry.xai-corp.net:5000/sslproxy:2.1", "-f ${dockerfile} .")
|
|
customImage.push()
|
|
}
|
|
|
|
sh "docker-compose -f docker-compose-prod.yml pull"
|
|
}
|
|
}
|
|
|
|
stage('deploy') {
|
|
dir(workdir) {
|
|
sh """
|
|
docker stack deploy --with-registry-auth --prune -c docker-compose-prod.yml sslproxy
|
|
docker service update sslproxy_app
|
|
"""
|
|
}
|
|
}
|
|
|
|
stage('smoke tests') {
|
|
dir(workdir) {
|
|
sleep 10
|
|
sh "curl -If https://jenkins.xai-corp.net/metrics/ejkxeVI-iKLy968ji9AnfYmOHGIh1kYd3gA500JqrRxzTeenT06ynR5Dqo0CQplO/healthcheck"
|
|
}
|
|
}
|
|
}
|