-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitlab-ci.yml
168 lines (136 loc) · 3.42 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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
# GLOBAL - Do not edit this section ---------------------------------------------------------------------------------------------------------------
stages:
- quality
- build-services
- build-stack
- upload-stack
- deploy
- approval
- deploy-preprod
- approval-to-prod
- approval-ops
- deploy-prod
# TEMPLATES - Do not edit this section ------------------------------------------------------------------------------------------------------------
.job_build_template: &build_definition
image: ${CI_STACK_BUILDER_STABLE_IMAGE}
.job_upload_template: &upload_definition
image: ${CI_STACK_UPLOADER_STABLE_IMAGE}
dependencies:
- build:stack
script:
- uploader
allow_failure: false
.job_deploy_template: &deploy_definition
image: ${CI_FULL_DEPLOYER_STABLE_IMAGE}
dependencies:
- build:stack
script:
- deployer
when: manual
.job_only_tags: &only_tags_definition
only:
- tags
.job_approval_template: &approval_definition
image: ${CI_APPROVAL_STABLE_IMAGE}
only:
- tags
variables:
APPROVAL_TYPE: approve
script:
- auth-checker
when: manual
.job_rejected_template: &rejected_definition
image: ${CI_APPROVAL_STABLE_IMAGE}
only:
- tags
variables:
APPROVAL_TYPE: reject
script:
- auth-checker
when: manual
# UNIT TEST & BUILD SERVICES - Only edit this section - Leave all comments intacts --------------------------------------------------------------------------
build:offboarding:
<<: *build_definition
stage: build-services
script:
- build-services offboarding
test:jest:
image: node:16-alpine
stage: quality
cache:
paths:
- offboarding/node_modules/
script:
- cd offboarding
- npm config set @geopagos:registry http://npm.geopagoslan.net
- yarn
- yarn test
# STACK - Do not edit this section - ---------------------------------------------------------------------------------------------------------------------
build:stack:
<<: *build_definition
stage: build-stack
artifacts:
paths:
- dist
script:
- build-stack
upload:stack:
<<: *upload_definition
stage: upload-stack
# Deploys - Do not edit this section - ------------------------------------------------------------------------------------------------------------------
deploy:dev:
<<: *deploy_definition
stage: deploy
environment: dev
deploy:sandbox:
<<: *deploy_definition
<<: *only_tags_definition
stage: deploy
environment: sandbox
deploy:test:
<<: *deploy_definition
<<: *only_tags_definition
stage: deploy
environment: test
deploy:testvolatil:
<<: *deploy_definition
<<: *only_tags_definition
stage: deploy
environment: testvolatil
approval:QA:
<<: *approval_definition
stage: approval
approval:RQA:
<<: *approval_definition
stage: approval
rejected:QA:
<<: *rejected_definition
stage: approval
deploy:preprod:
<<: *deploy_definition
<<: *only_tags_definition
stage: deploy-preprod
environment: preprod
deploy:demo:
<<: *deploy_definition
<<: *only_tags_definition
stage: deploy-preprod
environment: demo
approval:TL:
<<: *approval_definition
stage: approval-to-prod
approval:PM:
<<: *approval_definition
stage: approval-to-prod
approval:OP:
<<: *approval_definition
stage: approval-ops
allow_failure: false
rejected:OP:
<<: *rejected_definition
stage: approval-ops
deploy:prod:
<<: *deploy_definition
<<: *only_tags_definition
stage: deploy-prod
environment: prod