-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.sub.gitlab-ci.yml.j2
41 lines (38 loc) · 1.08 KB
/
.sub.gitlab-ci.yml.j2
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
stages:
{%- for stage in stages %}
- {{ stage.name -}}
{%- endfor %}
.default:
tags:
- ci
image: registry.gitlab.com/szymonrychu/builder:latest
{%- for stage in stages %}
{%- for release in stage.releases %}
{{ release.namespace }}:{{ release.name }}:
stage: {{ stage.name }}
extends: .default
environment: {{ release.namespace }}.{{ release.name }}
rules:
- changes:
- .parse_helmfile.py
- .gitlab-ci.yml
- .sub.gitlab-ci.yml.j2
{%- for path in release.changed_files %}
- {{ path -}}
{%- endfor %}
script:
- |
echo "${GPG_PRIVATE_RSA_B64}" | base64 --decode | gpg --import
mkdir -p ~/.kube
echo "${KUBE_CONFIG_B64}" | base64 --decode > ~/.kube/config
chmod 0600 ~/.kube/config
echo "${GHCR_TOKEN}" | helm registry login ghcr.io --username "${GHCR_USER}" --password-stdin
- |
helmfile {{ helmfile_command }} \
--selector name={{ release.name }} \
{%- if helmfile_command == "diff" %}
--detailed-exitcode \
{%- endif %}
--skip-needs
{%- endfor %}
{%- endfor %}