yaml-cpp: update to 0.8.0; keep yaml-cpp 0.7.0
[oi-userland.git] / ci / pr-builder.groovy
blobc5ae3b9afd2c9e31cf6e38a3437ad834eeb6bc91
1 // OpenIndiana Userland Jenkinsfile, (c) 2021 Olaf Bohlen <olbohlen@eenfach.de>
2 // OpenIndiana Userland Jenkinsfile, (c) 2021 Till Wegmueller <toasterson@gmail.com>
4 // ensure the jenkins user can modify SMF services, e.g. run:
5 // usermod -A solaris.smf.* -P 'Service Operator' jenkins
7 // To add more things have a look at the documentation under
8 // https://github.com/jenkinsci/pipeline-github-plugin
10 // TODO: Do not build draft PR's
11 // TODO: Figure out what to do when no Makefile was changed
12 // TODO: have two build Jobs (one for oi/hipster and another for this PR)
13 // TODO: matrix build against multiple configuration gcc-7, gcc-10, gcc-11 and encumbered vs. without encumbered
15 pipeline {
16 options {
17 // set a timeout of 600 minutes for this pipeline
18 timeout(time: 600, unit: 'MINUTES')
20 agent {
21 node {
22 label 'buildserver'
25 stages {
26 stage('setup stage') {
27 steps {
28 sh './tools/jenkinshelper.ksh -s setup'
32 stage('build changed components') {
33 steps {
34 sh './tools/jenkinshelper.ksh -s build_changed'
38 stage('create initial pkgdepotd.conf if not exists') {
39 steps {
40 sh './tools/jenkinshelper.ksh -s prepare_pkgdepotd'
44 stage('cleanup') {
45 when {
46 changeRequest()
48 steps {
49 script {
50 if (pullRequest.state == "closed" || pullRequest.merged) {
51 sh './tools/jenkinshelper.ksh -s cleanup_pr'