-
-
Notifications
You must be signed in to change notification settings - Fork 97
/
Copy path.gitlab-ci.yml
133 lines (115 loc) · 4.02 KB
/
.gitlab-ci.yml
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
variables:
# MAVEN_OPTS: "-Djava.awt.headless=true -Dmaven.repo.local=./.m2/repository"
MAVEN_OPTS: "-Djava.awt.headless=true"
MAVEN_CLI_OPTS: "-B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn"
image: maven:3.9-eclipse-temurin-22
cache:
paths:
- ./.m2
default:
tags:
- mvrunner1
before_script:
- apt-get update -qq
- apt-get install -y -qq openjdk-11-jre-headless ssh lib32ncurses6 lib32z1 wget tar file gnupg2 git-lfs > /dev/null
- source /private/ENVS
- whoami
- mkdir -p ~/.ssh
- ssh-keyscan -p 60002 dw2.mvorg.de >> ~/.ssh/known_hosts
- ssh-keyscan -p 60002 116.202.81.23 >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
- wget -q https://download-gcdn.ej-technologies.com/install4j/install4j_unix_10_0_7.tar.gz -O install4j.tar.gz
- tar -zxf install4j.tar.gz
- java -version
- ${INSTALL4J_JAVA_HOME}/bin/java -version
- mvn -v
- mvn clean
- mvn install4j:install-license -Pinstall4j
# - git clone https://gitlab.com/mediathekview/mediathekview-buildres.git tmpres
# - mv tmpres/bin res/
# - rm -rf tmpres
stages:
- deploy-nightly-lin
- deploy-nightly-linarm
- deploy-nightly-win
# - deploy-nightly-win32
- deploy-nightly-mac
# - deploy-nightly-mac-as
- deploy-lin
- deploy-linarm
- deploy-win
# - deploy-win32
Build and Deploy nightly Linux:
stage: deploy-nightly-lin
script:
- mvn -B package -Plinux_64bit,install4j $MAVEN_CLI_OPTS
- echo "Baue AppImage"
- scripte/appimage.sh nightly
- /skripte/deploy.sh nightly linux $CI_COMMIT_SHA
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule" && $CI_COMMIT_BRANCH == "develop"'
Build and Deploy nightly Linux ARM:
stage: deploy-nightly-linarm
script:
- mvn -B package -P!linux_64bit,linux_arm_64bit,install4j $MAVEN_CLI_OPTS
- /skripte/deploy.sh nightly linux-aarch64 $CI_COMMIT_SHA
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule" && $CI_COMMIT_BRANCH == "develop"'
Build and Deploy nightly Windows:
stage: deploy-nightly-win
script:
- mvn -B package -P!linux_64bit,windows_64bit,install4j $MAVEN_CLI_OPTS
- /skripte/deploy.sh nightly win $CI_COMMIT_SHA
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule" && $CI_COMMIT_BRANCH == "develop"'
# Build and Deploy nightly Windows 32bit:
# stage: deploy-nightly-win32
# script:
# - mvn -B package -P!linux_64bit,windows_32bit,install4j $MAVEN_CLI_OPTS
# - /skripte/deploy.sh nightly win32 $CI_COMMIT_SHA
# rules:
# - if: '$CI_PIPELINE_SOURCE == "schedule" && $CI_COMMIT_BRANCH == "develop"'
Build and Deploy nightly Mac Intel:
stage: deploy-nightly-mac
script:
- mvn -B package -P!linux_64bit,mac_intel $MAVEN_CLI_OPTS
- /skripte/deploy.sh nightly mac $CI_COMMIT_SHA
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule" && $CI_COMMIT_BRANCH == "develop"'
# Build and Deploy nightly Mac Apple Silicon:
# stage: deploy-nightly-mac-as
# script:
# - mvn -B package -P!linux_64bit,mac_apple_silicon $MAVEN_CLI_OPTS
# - /skripte/deploy.sh nightly mac $CI_COMMIT_SHA
# rules:
# - if: '$CI_PIPELINE_SOURCE == "schedule" && $CI_COMMIT_BRANCH == "develop"'
Build and Deploy Linux:
stage: deploy-lin
script:
- mvn -B package -Plinux_64bit,install4j $MAVEN_CLI_OPTS
- echo "Baue AppImage"
- scripte/appimage.sh release
- /skripte/deploy.sh release linux
rules:
- if: $CI_COMMIT_TAG
Build and Deploy Linux ARM:
stage: deploy-linarm
script:
- mvn -B package -P!linux_64bit,linux_arm_64bit,install4j $MAVEN_CLI_OPTS
- /skripte/deploy.sh release linux-aarch64
rules:
- if: $CI_COMMIT_TAG
Build and Deploy Windows:
stage: deploy-win
script:
- mvn -B package -P!linux_64bit,windows_64bit,install4j $MAVEN_CLI_OPTS
- /skripte/deploy.sh release win
rules:
- if: $CI_COMMIT_TAG
# Build and Deploy Windows 32bit:
# stage: deploy-win32
# script:
# - mvn -B package -P!linux_64bit,windows_32bit,install4j $MAVEN_CLI_OPTS
# - /skripte/deploy.sh release win32
# rules:
# - if: $CI_COMMIT_TAG