-
Notifications
You must be signed in to change notification settings - Fork 35
/
Jenkinsfile.open.si
46 lines (43 loc) · 2.04 KB
/
Jenkinsfile.open.si
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
#!/usr/bin/env groovy
node('py36') {
wrap([$class: 'MesosSingleUseSlave']) {
wrap([$class: 'AnsiColorBuildWrapper', 'colorMapName': 'XTerm']) {
// Hardcoded default values are:
// DC/OS OS: channel="testing/pull/2359", for open cluster (from: https://github.com/dcos/dcos/pull/2359)
// DC/OS EE: channel="testing/pull/2121", for strict, permissive clusters (from: https://github.com/mesosphere/dcos-enterprise/pull/2121)
// The channel can be passed to the job in Jenkins (Build with Parameters) so that this job can be executed against any PR/cluster.
properties([
// once a day between 1 AM and 5 AM
pipelineTriggers([cron('H H(1-5) * * *')]),
parameters([
string(name: 'channel',
defaultValue: 'testing/pull/2359',
description: 'PR to start the cluster from e.g. testing/pull/2359'
)]
)
])
stage("Run System Integration Test Pipeline") {
try {
checkout scm
withCredentials(
[ [$class: 'AmazonWebServicesCredentialsBinding', credentialsId: 'mesosphere-ci-marathon', accessKeyVariable: 'AWS_ACCESS_KEY_ID', secretKeyVariable: 'AWS_SECRET_ACCESS_KEY'],
[$class: 'FileBinding', credentialsId: '11fcc957-5156-4470-ae34-d433da88248a', variable: 'DOT_SHAKEDOWN']
]) {
sh """./ci/si_pipeline.sh $params.channel open"""
}
} catch (Exception e) {
currentBuild.result = 'FAILURE'
slackSend(
message: "(;¬_¬) SI tests for Metronome (Open) failed in build `${env.BUILD_NUMBER}`. (<${env.BUILD_URL}|Open>)",
color: "danger",
channel: "#metronome-internal",
tokenCredentialId: "4a6636e5-452e-41d2-aea3-9f28448196f3")
} finally {
junit allowEmptyResults: true, testResults: "**/shakedown.xml"
archive includes: "**/diagnostics.zip"
archive includes: "**/sandbox_*.tar.gz"
}
}
}
}
}