|
1
|
1
|
image: java:8u102-jdk
|
|
2
|
2
|
|
|
3
|
3
|
variables:
|
|
4
|
|
- DEVELOP: "develop-5.x"
|
|
5
|
|
- MASTER: "master-5.x"
|
|
|
4
|
+ DEVELOP: "develop"
|
|
|
5
|
+ MASTER: "master"
|
|
6
|
6
|
STAGE: "frirdobserve"
|
|
7
|
7
|
|
|
8
|
8
|
stages:
|
| ... |
... |
@@ -12,30 +12,24 @@ stages: |
|
12
|
12
|
- Production
|
|
13
|
13
|
|
|
14
|
14
|
.before_script_default: &before_script_default
|
|
15
|
|
- tags:
|
|
16
|
|
- - gitlab-org
|
|
17
|
|
- - shared
|
|
18
|
15
|
before_script:
|
|
19
|
16
|
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
|
|
20
|
17
|
- eval $(ssh-agent -s)
|
|
21
|
18
|
- ssh-add <(echo "$SSH_PRIVATE_KEY")
|
|
22
|
19
|
- mkdir -p ~/.ssh
|
|
23
|
20
|
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
|
|
24
|
|
- - (cd ~ ; git clone ssh://git@gitlab.com/maven.ultreia.io/env.git)
|
|
25
|
|
- - . ~/env/bin/prepare-env.sh "$MAVEN_PRIVATE_KEY" "$CI_PROJECT_PATH" "$CI_PROJECT_NAME"
|
|
|
21
|
+ - (cd ~ ; git clone ssh://git@gitlab.com/ultreiaio/env.git)
|
|
|
22
|
+ - . ~/env/bin/prepare-env.sh "$GITLAB_USER_ID" "$GITLAB_USER_EMAIL"
|
|
26
|
23
|
|
|
27
|
24
|
.before_script_clone: &before_script_clone
|
|
28
|
|
- tags:
|
|
29
|
|
- - gitlab-org
|
|
30
|
|
- - shared
|
|
31
|
25
|
before_script:
|
|
32
|
26
|
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
|
|
33
|
27
|
- eval $(ssh-agent -s)
|
|
34
|
28
|
- ssh-add <(echo "$SSH_PRIVATE_KEY")
|
|
35
|
29
|
- mkdir -p ~/.ssh
|
|
36
|
30
|
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
|
|
37
|
|
- - (cd ~ ; git clone ssh://git@gitlab.com/maven.ultreia.io/env.git)
|
|
38
|
|
- - . ~/env/bin/prepare-env-with-clone.sh "$MAVEN_PRIVATE_KEY" "$CI_PROJECT_PATH" "$CI_PROJECT_NAME"
|
|
|
31
|
+ - (cd ~ ; git clone ssh://git@gitlab.com/ultreiaio/env.git)
|
|
|
32
|
+ - . ~/env/bin/prepare-env-with-clone.sh "$CI_PROJECT_PATH" "$CI_PROJECT_NAME" "$GITLAB_USER_ID" "$GITLAB_USER_EMAIL"
|
|
39
|
33
|
|
|
40
|
34
|
.env_test: &env_test
|
|
41
|
35
|
environment:
|
| ... |
... |
@@ -51,22 +45,21 @@ stages: |
|
51
|
45
|
|
|
52
|
46
|
.deploy_site: &deploy_site
|
|
53
|
47
|
script:
|
|
54
|
|
- - mvn verify site site:stage -DperformRelease
|
|
55
|
|
- - mvn scm-publish:publish-scm
|
|
|
48
|
+ - wget -q -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/execute-maven.sh | sed 's/$1/clean install site -DperformRelease scm-publish:publish-scm/' | bash
|
|
56
|
49
|
|
|
57
|
50
|
.deploy_demo_latest: &deploy_demo_latest
|
|
58
|
51
|
stage: Test
|
|
59
|
52
|
script:
|
|
60
|
|
- - mvn -Padd-git-commit-id-to-project-version -N
|
|
61
|
|
- - mvn install -am -pl application-web -DskipTests -Pdeploy-demo -Dclassifier=latest
|
|
|
53
|
+ - wget -q -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/execute-maven.sh | sed 's/$1/-Padd-git-commit-id-to-project-version -N/' | bash
|
|
|
54
|
+ - wget -q -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/execute-maven.sh | sed 's/$1/install -am -pl application-web -DskipTests -Pdeploy-demo -Dclassifier=latest/' | bash
|
|
62
|
55
|
|
|
63
|
56
|
build:
|
|
64
|
57
|
stage: Build
|
|
65
|
58
|
<<: *before_script_default
|
|
66
|
59
|
script:
|
|
67
|
|
- - mvn clean verify
|
|
|
60
|
+ - wget -q -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/execute-maven.sh | sed 's/$1/clean verify/' | bash
|
|
68
|
61
|
only:
|
|
69
|
|
- - develop-5.x
|
|
|
62
|
+ - develop
|
|
70
|
63
|
- feature/*
|
|
71
|
64
|
except:
|
|
72
|
65
|
- triggers
|
| ... |
... |
@@ -75,18 +68,30 @@ build: |
|
75
|
68
|
stage: Test
|
|
76
|
69
|
<<: *before_script_default
|
|
77
|
70
|
only:
|
|
78
|
|
- - develop-5.x
|
|
|
71
|
+ - develop
|
|
79
|
72
|
except:
|
|
80
|
73
|
- triggers
|
|
81
|
74
|
when: manual
|
|
82
|
75
|
|
|
|
76
|
+deploy_snapshot:
|
|
|
77
|
+ <<: *env_staging
|
|
|
78
|
+ <<: *test_manual
|
|
|
79
|
+ <<: *before_script_clone
|
|
|
80
|
+ script:
|
|
|
81
|
+ - apt-get update -y && apt-get install libc6-i386 libx32stdc++6 -y
|
|
|
82
|
+ - wget -q -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/execute-maven.sh | sed 's/$1/deploy -DperformRelease/' | bash
|
|
|
83
|
+
|
|
83
|
84
|
stage:
|
|
84
|
85
|
<<: *env_staging
|
|
85
|
86
|
<<: *test_manual
|
|
86
|
87
|
<<: *before_script_clone
|
|
87
|
88
|
script:
|
|
88
|
89
|
- apt-get update -y && apt-get install libc6-i386 libx32stdc++6 -y
|
|
89
|
|
- - . bin/create_stage.sh
|
|
|
90
|
+ - wget -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/close-milestone.sh | bash
|
|
|
91
|
+ - wget -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/create-stage.sh | bash
|
|
|
92
|
+ - wget -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/update-staging-changelog.sh | sed 's/$1/frirdobserve/' | bash
|
|
|
93
|
+ - wget -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/create-milestone.sh | bash
|
|
|
94
|
+ - wget -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/close-stage.sh | sed 's/$1/frirdobserve/' | bash
|
|
90
|
95
|
|
|
91
|
96
|
latest-site:
|
|
92
|
97
|
<<: *env_test
|
| ... |
... |
@@ -108,7 +113,7 @@ nightly-build: |
|
108
|
113
|
<<: *nightly
|
|
109
|
114
|
script:
|
|
110
|
115
|
- apt-get update -y && apt-get install libc6-i386 libx32stdc++6 -y
|
|
111
|
|
- - mvn clean verify -DperformRelease
|
|
|
116
|
+ - wget -q -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/execute-maven.sh | sed 's/$1/clean verify -DperformRelease/' | bash
|
|
112
|
117
|
|
|
113
|
118
|
nightly-site:
|
|
114
|
119
|
stage: Test
|
| ... |
... |
@@ -132,7 +137,7 @@ nightly-demo: |
|
132
|
137
|
staging-demo:
|
|
133
|
138
|
<<: *staging
|
|
134
|
139
|
script:
|
|
135
|
|
- - mvn install -am -pl application-web -DskipTests -Pdeploy-demo -DperformRelease
|
|
|
140
|
+ - wget -q -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/execute-maven.sh | sed 's/$1/install -am -pl application-web -DskipTests -Pdeploy-demo -DperformRelease/' | bash
|
|
136
|
141
|
|
|
137
|
142
|
staging-site:
|
|
138
|
143
|
<<: *staging
|
| ... |
... |
@@ -142,7 +147,13 @@ release: |
|
142
|
147
|
<<: *staging
|
|
143
|
148
|
when: manual
|
|
144
|
149
|
script:
|
|
145
|
|
- - . bin/stage_release.sh
|
|
|
150
|
+ - wget -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/release-stage.sh | sed 's/$1/frirdobserve/' | bash
|
|
|
151
|
+
|
|
|
152
|
+drop:
|
|
|
153
|
+ <<: *staging
|
|
|
154
|
+ when: manual
|
|
|
155
|
+ script:
|
|
|
156
|
+ - wget -O - https://gitlab.com/ultreiaio/pom/raw/master/bin/drop-stage.sh | sed 's/$1/frirdobserve/' | bash
|
|
146
|
157
|
|
|
147
|
158
|
production:
|
|
148
|
159
|
stage: Production
|