-
Notifications
You must be signed in to change notification settings - Fork 3
/
Jenkinsfile
85 lines (74 loc) · 1.7 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
#!/usr/bin/env groovy
pipeline {
agent { label 'executor-v2' }
options {
timestamps()
buildDiscarder(logRotator(numToKeepStr: '30'))
lock resource: "tas-infra"
}
triggers {
cron(getDailyCronString())
}
stages {
stage('Grant IP Access') {
steps {
// Grant access to this Jenkins agent's IP to AWS security groups
grantIPAccess()
}
}
stage('Validate Changelog') {
steps {
parseChangelog()
}
}
stage('Package') {
steps {
sh './package.sh && ./unpack.sh'
archiveArtifacts('conjur_buildpack*.zip')
}
}
stage('Test') {
parallel {
stage('Integration Tests') {
steps {
sh './ci/test_integration'
junit 'tests/integration/reports/integration/*.xml'
}
}
stage('End To End Tests') {
steps {
allocateTas('isv_ci_tas_srt_5_0')
sh 'summon -f ./ci/secrets.yml ./ci/test_e2e'
junit 'tests/integration/reports/e2e/*.xml'
}
post {
always {
destroyTas()
}
}
}
stage('Unit Tests') {
stages {
stage("Secret Retrieval Script Tests") {
steps {
sh './tests/retrieve-secrets/start'
junit 'TestReport-test.xml'
}
}
stage("Conjur-Env Unit Tests") {
steps {
sh './ci/test_conjur-env'
junit 'conjur-env/output/*.xml'
}
}
}
}
}
}
}
post {
always {
cleanupAndNotify(currentBuild.currentResult)
}
}
}