#!/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}") } } }