Jenkinsfile test

This commit is contained in:
Sebastien 2018-03-07 15:54:53 +01:00
parent fa27ac0bb2
commit cb0cc370b0

17
Jenkinsfile vendored
View File

@ -4,6 +4,7 @@ pipeline {
def app def app
stage('Clone') { // for display purposes stage('Clone') { // for display purposes
// Get some code from a GitHub repository // Get some code from a GitHub repository
steps {
echo env.BRANCH_NAME echo env.BRANCH_NAME
script { script {
if (env.BRANCH_NAME == 'master') { if (env.BRANCH_NAME == 'master') {
@ -12,9 +13,12 @@ pipeline {
git url: 'https://github.com/BrokenFire/BrokenDiscordBot.git', branch: 'devel' git url: 'https://github.com/BrokenFire/BrokenDiscordBot.git', branch: 'devel'
} }
} }
}
} }
stage('Gradle Build'){ stage('Gradle Build'){
steps{
script { script {
if (env.BRANCH_NAME == 'master') { if (env.BRANCH_NAME == 'master') {
build job: 'Bot Discord Gradle', wait: true build job: 'Bot Discord Gradle', wait: true
@ -23,17 +27,22 @@ pipeline {
} }
} }
} }
}
stage('Build Docker image') { stage('Build Docker image') {
/* This builds the actual image; synonymous to /* This builds the actual image; synonymous to
* docker build on the command line */ * docker build on the command line */
steps{
app = docker.build("brokenfire/brokendiscordbot",'--build-arg BUILD_NBR=${BUILD_NUMBER} --build-arg BRANCH_NAME=${BRANCH_NAME} --rm=true .') app = docker.build("brokenfire/brokendiscordbot",'--build-arg BUILD_NBR=${BUILD_NUMBER} --build-arg BRANCH_NAME=${BRANCH_NAME} --rm=true .')
} }
}
stage('Push Docker image') { stage('Push Docker image') {
/* Finally, we'll push the image with two tags: /* Finally, we'll push the image with two tags:
* First, the incremental build number from Jenkins * First, the incremental build number from Jenkins
* Second, the 'latest' tag. * Second, the 'latest' tag.
* Pushing multiple tags is cheap, as all the layers are reused. */ * Pushing multiple tags is cheap, as all the layers are reused. */
steps{
withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'docker-hub-credentials', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) { withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'docker-hub-credentials', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) {
sh 'docker login -u $USERNAME -p $PASSWORD' sh 'docker login -u $USERNAME -p $PASSWORD'
script { script {
@ -44,13 +53,19 @@ pipeline {
} }
} }
} }
}
} }
stage('Cleaning'){ stage('Cleaning'){
steps{
sh "docker image prune -f" sh "docker image prune -f"
} }
}
} }
} }