forked from Ableton/LinkKit
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Jenkinsfile
52 lines (39 loc) · 1.15 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
library '[email protected]'
library '[email protected]'
import groovy.transform.Field
@Field final String LINK_ORIGIN = 'https://github.com/Ableton/link.git'
@Field final String LINK_HASH = 'c1449edb28ccba86396a46a9989b8795960160a9'
void addCheckStages() {
eventRecorder.timedNode('generic-linux') {
eventRecorder.timedStage('Check') {
doCheckout()
groovylint.check('./Jenkinsfile')
}
}
}
void addBuildStages(Map args) {
eventRecorder.timedNode("generic-mac-${args.xcode}") {
eventRecorder.timedStage('Checkout') {
sh 'env' // Print out all environment variables for debugging purposes
doCheckout()
sh "git clone ${LINK_ORIGIN}"
dir('link') {
sh "git checkout ${LINK_HASH}"
sh 'git submodule update --init --recursive'
}
}
eventRecorder.timedStage('Make Bundle') {
sh 'make link_dir=link'
archiveArtifacts 'build/output/LinkKit.zip'
}
}
}
void doCheckout() {
gitRepo.checkoutRevision(
credentialsId: 'build-ssh-key',
revision: env.JENKINS_COMMIT,
url: '[email protected]:AbletonAppDev/link-ios.git',
)
}
addCheckStages()
addBuildStages(xcode: 'xcode9.3')