pdns-auth-proxy/Jenkinsfile

67 lines
1.4 KiB
Groovy

#!/usr/bin/env groovy
@Library('jarvis') _
pipeline {
agent {
label 'westeros-agent'
}
options {
buildDiscarder(logRotator(numToKeepStr: '5'))
durabilityHint('PERFORMANCE_OPTIMIZED')
timestamps()
}
environment {
def alfred = null
def repo_name = sh returnStdout: true, script: 'basename -s .git $(git config --get remote.origin.url)'
def version = sh returnStdout: true, script: 'git describe --tags'
VERSION = "${version}"
SLACK_CHANNEL = 'admin-install'
}
stages {
stage("Alfred") {
steps {
script {
alfred = getAlfredConfig()
sh 'make -f Makefile.ci init'
}
}
}
stage("Build") {
steps {
sh 'make -f Makefile.ci build'
}
}
stage("Quality") {
steps {
parallel(
format: {
sh 'make -f Makefile.ci fmt'
},
lint: {
sh 'make -f Makefile.ci lint'
},
test: {
sh 'make -f Makefile.ci test'
}
)
}
}
stage('TO DO: build a debian package & publish it in packages.dm.gg ') {
when {
branch "master"
}
steps {
echo "Expecting something here"
}
}
}
post {
success {
sendPipelineStatusToSlack('SUCCESS', "Gitlab - Docker - ${repo_name}")
}
failure {
sendPipelineStatusToSlack('FAILURE', "Gitlab - Docker - ${repo_name}")
}
}
}