forked from apache/couchdb-documentation
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Jenkinsfile
59 lines (55 loc) · 1.48 KB
/
Jenkinsfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
pipeline {
agent none
environment {
GIT_COMMITTER_NAME = 'Jenkins User'
GIT_COMMITTER_EMAIL = 'couchdb@apache.org'
DOCKER_IMAGE = 'couchdbdev/debian-buster-erlang-all:latest'
DOCKER_ARGS = '-e npm_config_cache=npm-cache -e HOME=. -v=/etc/passwd:/etc/passwd -v /etc/group:/etc/group'
}
options {
buildDiscarder(logRotator(numToKeepStr: '10', artifactNumToKeepStr: '10'))
// This fails the build immediately if any parallel step fails
parallelsAlwaysFailFast()
preserveStashes(buildCount: 10)
timeout(time: 30, unit: 'MINUTES')
timestamps()
}
stages {
stage('Test') {
matrix {
axes {
axis {
name 'TARGET'
values "html", "man", "check"
}
}
stages {
stage('Test') {
agent {
docker {
image "${DOCKER_IMAGE}"
label 'docker'
args "${DOCKER_ARGS}"
alwaysPull true
}
}
options {
timeout(time: 90, unit: 'MINUTES')
}
steps {
sh '''
make ${TARGET}
'''
}
post {
cleanup {
// UGH see https://issues.jenkins-ci.org/browse/JENKINS-41894
sh 'rm -rf ${WORKSPACE}/*'
}
}
} // stage
} // stages
} // matrix
} // stage "Test"
} // stages
} // pipeline