forked from luwrain/parent
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Jenkinsfile
61 lines (54 loc) · 1.49 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
pipeline {
agent any
triggers { pollSCM('* * * * *') }
environment {
JAVA_HOME = "/usr/lib/jvm/java-17-openjdk-amd64"
}
stages {
stage('Checkout') {
steps {
sh 'git submodule update --init --recursive'
}
}
stage('Prepare') {
steps {
dir ('/out') {
sh 'rm -rf snapshot && mkdir -p snapshot'
}
dir('base/sounds') {
sh './make'
sh 'rm -f ../../luwrain/src/main/resources/org/luwrain/core/sound/* && cp *.wav ../../luwrain/src/main/resources/org/luwrain/core/sound/'
}
}
}
stage('Build') {
steps {
sh 'mvn install'
dir('base/scripts') {
sh './lwr-ant-gen-all'
sh './lwr-build'
}
}
}
stage ('Snapshot') {
steps {
dir ('base/scripts') {
sh './lwr-snapshot /out/snapshot'
}
dir ('out') {
sh 'date > /out/snapshot/timestamp.txt'
}
}
}
stage('Generate win dist') {
steps {
dir('base/scripts') {
sh './lwr-dist-win /out/win_generated_files'
}
dir('out/win_generated_files/installer-x64') {
sh 'docker run --rm -i -v "$(pwd):/work" amake/innosetup Luwrain.iss'
}
}
}
}
}