sos-milter/Jenkinsfile.declarative

49 lines
920 B
Plaintext

pipeline {
environment {
imageObject = ''
}
agent any
stages {
stage('Build image') {
steps {
sh '/usr/bin/env'
/* This builds the actual image; synonymous to
* docker build on the command line */
script {
imageObject = docker.build(env.imageName)
}
}
}
stage('Test image') {
steps {
/* Ideally, we would run a test framework against our image.
* For this example, we're using a Volkswagen-type approach ;-) */
script {
imageObject.inside {
sh 'echo "Tests passed"'
}
}
}
}
stage('Push image') {
steps {
script {
docker.withRegistry(env.dockerRegistry) {
imageObject.push()
}
}
}
}
stage('Cleanup') {
steps {
sh 'echo "TODO: cleanup!"'
}
}
}
}