library('jenkins_build') node { docker.withRegistry('https://registry.elbert.us', '6ad2f24c-6da4-4cdb-b526-4773922fb0d5') { main { def jobnameparts = JOB_NAME.tokenize('/') as String[] def jobconsolename = jobnameparts[0] def projectName = jobconsolename def dockerImageName = "registry.elbert.us/${projectName}" def sourceFigFile = "./docker-compose-rlyeh.yml" def figFile = "/etc/fig/${projectName}.yml" def dockerImage stage("Checkout") { checkout scm } stage("Build") { dockerImage = docker.build("${dockerImageName}:latest") } stage("Deploy") { dockerImage.push() dockerImage.push("production") sh "/usr/local/bin/docker-compose --project-name '${projectName}' --file '${sourceFigFile}' pull" if (fileExists(figFile)) { sh "/usr/local/bin/docker-compose --project-name '${projectName}' --file '${figFile}' down" } sh "cp ${sourceFigFile} ${figFile}" sh "/usr/local/bin/docker-compose --project-name '${projectName}' --file '${figFile}' up -d" } } } }