-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathJenkinsfile
92 lines (79 loc) · 1.85 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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#!/usr/bin/env groovy
pipeline {
agent none
environment {
DOCKER_ARGS = ''
UPDATE_SITE_URL = "sftp://repo@repo.se.internal/var/www/html/kieker"
DESTINATION = 'snapshot'
}
options {
buildDiscarder logRotator(artifactNumToKeepStr: '3', artifactDaysToKeepStr: '5', daysToKeepStr: '4', numToKeepStr: '10')
timeout(time: 150, unit: 'MINUTES')
retry(1)
parallelsAlwaysFailFast()
}
triggers {
cron(env.BRANCH_NAME == 'master' ? '@daily' : '')
}
stages {
stage('Precheck') {
when {
changeRequest target: 'stable'
}
steps {
error "It is not allowed to create pull requests towards the 'stable' branch. Create a new pull request towards the 'master' branch please."
}
}
stage('Build') {
agent {
docker {
image 'prefec2/kieker-c-build'
alwaysPull false
args env.DOCKER_ARGS
}
}
stages {
stage('Initial Setup') {
steps {
// Make sure that no remainders from previous builds interfere.
dir('source') {
sh 'libtoolize'
sh 'aclocal'
sh 'autoconf'
sh 'automake --add-missing'
}
}
}
stage('Compile') {
steps {
dir('source') {
sh './configure'
sh 'make'
}
}
}
stage('Static Analysis') {
steps {
sh 'echo dummy'
}
}
stage('Unit Test') {
steps {
dir('source') {
sh 'make check'
}
}
}
stage('Distribution Build') {
steps {
sh './create-debian.sh'
}
}
stage('Upload') {
steps {
}
}
}
}
}
}