blob: a07d4f2a52d75af9de774f238c8e39e00e106db1 [file] [log] [blame]
/* voltha-publish pipeline */
pipeline {
/* no label, executor is determined by JJB */
agent {
label "${params.executorNode}"
}
stages {
stage('repo') {
steps {
checkout(changelog: false, \
poll: false,
scm: [$class: 'RepoScm', \
manifestRepositoryUrl: "${params.manifestUrl}", \
manifestBranch: "${params.manifestBranch}", \
manifestGroup: 'voltha', \
currentBranch: true, \
destinationDir: 'cord', \
forceSync: true,
resetFirst: true, \
quiet: true, \
jobs: 4, \
showAllChanges: true] \
)
}
}
stage('build'){
steps {
sh """
#!/usr/bin/env bash
pushd cord/incubator/voltha
if [ "${params.manifestBranch}" != "master" ]
then
VOLTHA_BUILD=docker DOCKER_CACHE_ARG=--no-cache TAG=${params.manifestBranch} make build
else
VOLTHA_BUILD=docker DOCKER_CACHE_ARG=--no-cache make build
fi
popd
"""
}
}
stage('push'){
steps {
withDockerRegistry([credentialsId: 'docker-artifact-push-credentials', url: '']) {
sh """
#!/usr/bin/env bash
pushd cord/incubator/voltha
if [ "${params.manifestBranch}" != "master" ]
then
VOLTHA_BUILD=docker TAG=${params.manifestBranch} TARGET_REPOSITORY=voltha/ TARGET_TAG=${params.manifestBranch} make push
else
VOLTHA_BUILD=docker TARGET_REPOSITORY=voltha/ make push
fi
popd
"""
}
}
}
}
post {
failure {
emailext (
subject: "$PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS",
body: "Check console output at $BUILD_URL to view the results.",
to: "${params.failureEmail}"
)
}
}
}