Jenkins declarative pipeline

This commit is contained in:
Dominik Chilla 2019-06-13 20:32:51 +02:00
parent 49babbbf8a
commit acbd3bfb5d
3 changed files with 67 additions and 30 deletions

30
Jenkinsfile vendored
View File

@ -1,30 +0,0 @@
node {
def app
stage('Clone repository') {
sh '/usr/bin/env'
/* Let's make sure we have the repository cloned to our workspace */
checkout scm
}
stage('Build image') {
sh '/usr/bin/env'
/* This builds the actual image; synonymous to
* docker build on the command line */
app = docker.build("jenkins/sos-milter")
}
stage('Test image') {
/* Ideally, we would run a test framework against our image.
* For this example, we're using a Volkswagen-type approach ;-) */
app.inside {
sh 'echo "Tests passed"'
}
}
stage('Push image') {
docker.withRegistry('https://dockreg-fra.zwackl.de') {
app.push()
}
}
}

1
Jenkinsfile vendored Symbolic link
View File

@ -0,0 +1 @@
Jenkinsfile.declarative

37
Jenkinsfile.declarative Normal file
View File

@ -0,0 +1,37 @@
pipeline {
agent any
def docker_image
stages {
stage('Checkout SCM') {
checkout scm
}
stage('Build image') {
steps {
sh '/usr/bin/env'
/* This builds the actual image; synonymous to
* docker build on the command line */
docker_image = docker.build("jenkins/sos-milter")
}
}
stage('Test image') {
steps {
/* Ideally, we would run a test framework against our image.
* For this example, we're using a Volkswagen-type approach ;-) */
docker_image.inside {
sh 'echo "Tests passed"'
}
}
}
stage('Push image') {
steps {
docker.withRegistry('https://dockreg-fra.zwackl.de') {
docker_image.push()
}
}
}
}
}

29
Jenkinsfile.scripted Normal file
View File

@ -0,0 +1,29 @@
node {
def docker_image
stage('Clone repository') {
sh '/usr/bin/env'
/* Let's make sure we have the repository cloned to our workspace */
checkout scm
}
stage('Build image') {
/* This builds the actual image; synonymous to
* docker build on the command line */
docker_image = docker.build("jenkins/sos-milter")
}
stage('Test image') {
/* Ideally, we would run a test framework against our image.
* For this example, we're using a Volkswagen-type docker_imageroach ;-) */
docker_image.inside {
sh 'echo "Tests passed"'
}
}
stage('Push image') {
docker.withRegistry('https://dockreg-fra.zwackl.de') {
docker_image.push()
}
}
}