@@ -121,21 +121,22 @@ Build app image:
121
121
.test-default : &test-default
122
122
stage : test
123
123
needs : ["Build app image"]
124
+ dependencies : []
125
+
126
+ Unittest :
127
+ << : *test-default
128
+ variables :
129
+ DATABASE_NAME : bev
130
+ DATABASE_USER : bev
131
+ DATABASE_PASSWORD : bev
132
+ BEV_USER_CONFIG_PATH : $CI_PROJECT_DIR/dev-environment/dev-settings.ini
133
+ COVERAGE_FILE : $CI_PROJECT_DIR/.coverage
124
134
image : ${IMAGE_SHA}
125
135
tags :
126
136
- docker
127
137
services :
128
- - name : postgres:11
138
+ - name : magentaaps/ postgres-os2bos:1-10.14-test
129
139
alias : db
130
- dependencies : []
131
- variables :
132
- POSTGRES_USER : bev
133
- POSTGRES_PASSWORD : bev
134
- BEV_USER_CONFIG_PATH : $CI_PROJECT_DIR/dev-environment/dev-settings.ini
135
- COVERAGE_FILE : $CI_PROJECT_DIR/.coverage
136
-
137
- Unittest :
138
- << : *test-default
139
140
script :
140
141
- cd /code/backend &&
141
142
pytest
@@ -159,15 +160,19 @@ FrontendTest:
159
160
<< : *test-default
160
161
variables :
161
162
FF_NETWORK_PER_BUILD : 1
162
- POSTGRES_USER : bev
163
- POSTGRES_PASSWORD : bev
164
- BEV_USER_CONFIG_PATH : $CI_PROJECT_DIR/dev-environment/frontend-tests-settings.ini
163
+ DATABASE_NAME : bev
164
+ DATABASE_USER : bev
165
+ DATABASE_PASSWORD : bev
166
+ BEV_USER_CONFIG_PATH : /code/dev-environment/ci-settings.ini
165
167
SIMPLESAMLPHP_BASEURLPATH : http://idp:8080/simplesaml
166
168
SIMPLESAMLPHP_SP_ENTITY_ID : http://bev:5000
167
169
SIMPLESAMLPHP_SP_ASSERTION_CONSUMER_SERVICE : http://bev:5000/api/saml2_auth/acs/
168
170
image : magentalabs/frontend-test:v0.2 # includes npm, chrome, firefox and ffmpeg
171
+ tags :
172
+ - docker
173
+ - high-mem
169
174
services :
170
- - name : postgres:11
175
+ - name : magentaaps/ postgres-os2bos:1-10.14-test
171
176
alias : db
172
177
- name : ${IMAGE_SHA}
173
178
alias : bev
@@ -182,15 +187,13 @@ FrontendTest:
182
187
when : always
183
188
paths :
184
189
- $CI_PROJECT_DIR/artifacts
185
- allow_failure : true
186
190
187
191
# Release stage
188
192
# ##############
189
193
190
194
.release-default : &release-default
191
195
stage : release
192
- needs : ['Unittest']
193
- # needs: ["Unittest", "FrontendTest"] require also frontendTest to pass
196
+ needs : ["Unittest", "FrontendTest"]
194
197
image : alpine
195
198
variables :
196
199
GIT_STRATEGY : none # We do not need the source code
@@ -280,7 +283,7 @@ Deploy test:
280
283
Deploy dev :
281
284
# Manuel deployment job to cburdev.magenta.dk
282
285
<< : *deploy-default
283
- needs : ["Unittest"]
286
+ needs : ["Unittest", "FrontendTest" ]
284
287
except :
285
288
refs :
286
289
- master
@@ -299,14 +302,27 @@ Deploy dev:
299
302
name : dev
300
303
url : https://cburdev.magenta.dk
301
304
302
- .deploy-rc :
305
+
306
+ Deploy tag to staging :
303
307
<< : *deploy-default
304
308
needs : ["Release rc"]
309
+ when : manual
305
310
only :
306
- - /release/.*/
311
+ variables :
312
+ # Matches all of SemVer 2.0.0
313
+ - $CI_COMMIT_TAG =~ /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/
314
+ variables :
315
+ DEPLOYMENT_NAMESPACE : cbur.ballerup.staging
316
+ SALTAPI_URL : https://ctrl1.magenta-aps.dk/api/
317
+ SALTAPI_EAUTH : file
318
+ GIT_STRATEGY : none
319
+ PILLAR_OVERRIDE : " {\" OS2BOS_APPLICATION_DOCKER_IMAGE\" :\" ${IMAGE}:${CI_COMMIT_TAG}\" }"
307
320
script :
308
- - echo Deploying ${IMAGE_RC} to moratest.magneta.dk
309
- # TODO: push ${IMAGE_RC} to moratest.magneta.dk
321
+ - echo Deploying ${IMAGE_TAG} to https://test-bevilling.balk.dk
322
+ - pepper --client runner --fail-any state.orchestrate ${DEPLOYMENT_NAMESPACE} pillar=$(echo $PILLAR_OVERRIDE)
323
+ environment :
324
+ name : ballerup-staging
325
+ url : https://test-bevilling.balk.dk
310
326
311
327
312
328
.deploy-master :
0 commit comments