Files
provisioning/dockerfiles/services/nextcloud/Jenkinsfile

84 lines
2.3 KiB
Groovy

pipeline {
environment {
APP_NAME = 'xaibox'
WORKDIR = 'dockerfiles/services/nextcloud'
}
agent { label 'docker' }
options {
buildDiscarder(logRotator(numToKeepStr: '2'))
}
triggers {
cron('@monthly')
}
stages {
stage('prepare') {
steps {
checkout scm
sh 'ls'
}
}
stage('build') {
options {
ansiColor('xterm')
timeout(5)
}
steps {
dir(WORKDIR) {
withDockerRegistry(credentialsId: 'b11d7f1a-81ac-4daf-8842-56afc0d2370e', url: 'http://dkregistry.xai-corp.net:5000') {
sh "pwd"
sh "xai build"
}
}
}
}
stage('deploy') {
options {
ansiColor('xterm')
timeout(5)
}
steps {
dir(WORKDIR) {
withDockerRegistry(credentialsId: 'b11d7f1a-81ac-4daf-8842-56afc0d2370e', url: 'http://dkregistry.xai-corp.net:5000') {
sh "xai deploy"
}
}
}
post {
failure {
dir(WORKDIR) {
withDockerRegistry(credentialsId: 'b11d7f1a-81ac-4daf-8842-56afc0d2370e', url: 'http://dkregistry.xai-corp.net:5000') {
// sh "xai rollback"
}
}
}
}
}
}
post {
always {
emailext attachLog: true,
body: "Job completed: \n ${JOB_URL}",
subject: "Jenkins: Job: $JOB_NAME $BUILD_DISPLAY_NAME",
to: 'r_morgan@sympatico.ca'
}
unsuccessful {
emailext attachLog: true,
body: "Job failed to complete: \n ${JOB_URL}",
subject: "Jenkins: Job Failed: $JOB_NAME $BUILD_DISPLAY_NAME ",
to: 'r_morgan@sympatico.ca'
}
changed {
emailext attachLog: true,
body: 'Job failed to complete:',
subject: "Jenkins: Job Failed: $JOB_NAME $BUILD_DISPLAY_NAME",
to: 'r_morgan@sympatico.ca'
}
}
}