Skip to content
Snippets Groups Projects
Verified Commit 1d519ecb authored by Maarten de Waard's avatar Maarten de Waard :angel:
Browse files

feat: make sure helmreleases are deleted after MRs are merged

parent f1d1c428
No related branches found
No related tags found
No related merge requests found
Pipeline #15930 failed
......@@ -6,7 +6,7 @@ include:
- remote: https://open.greenhost.net/stackspin/stackspin/-/raw/main/.gitlab/ci_templates/dummy_job.yml
- template: 'Workflows/MergeRequest-Pipelines.gitlab-ci.yml'
.use-kubernetes:
.use_kubernetes:
image:
name: alpine/k8s:1.22.6
entrypoint: ["/bin/sh", "-c"]
......@@ -23,6 +23,15 @@ include:
- values.yaml
- Chart.yaml
.delete_helmrelease:
stage: install-helm-chart
script:
- cd ${CHART_DIR:-"."}
- ./fully-delete-helmrelease.sh "$RELEASE_NAME"
extends:
- .use_kubernetes
- .chart_changes_rules
stages:
- lint-helm-chart
- install-helm-chart
......@@ -35,21 +44,23 @@ variables:
CHART_NAME: nextcloud-onlyoffice
RELEASE_NAME: "nc$CI_MERGE_REQUEST_IID"
delete-helmrelease:
stage: install-helm-chart
script:
- cd ${CHART_DIR:-"."}
- ./fully-delete-helmrelease.sh "$RELEASE_NAME"
environment:
name: helmrelease/$RELEASE_NAME
action: stop
pre-install-delete-helmrelease:
extends:
- .use-kubernetes
- .chart_changes_rules
- .delete_helmrelease
# This job will fail if a helmrelease didn't exist (yet). For example in a
# first pipeline for an MR.
allow_failure: true
# This will clean up helmreleases after MRs have been merged, or after some time
post-install-delete-helmrelease:
extends:
- .delete_helmrelease
# Gets triggered by on_stop of install-helmrelease, or manually
when: manual
environment:
name: helmrelease/$RELEASE_NAME
action: stop
install-helmrelease:
stage: install-helm-chart
needs:
......@@ -72,9 +83,9 @@ install-helmrelease:
name: helmrelease/$RELEASE_NAME
url: https://files-$RELEASE_NAME.gitlab.stackspin.net
auto_stop_in: 1 week
on_stop: delete-helmrelease
on_stop: post-install-delete-helmrelease
extends:
- .use-kubernetes
- .use_kubernetes
- .chart_changes_rules
test-helm-chart:
......@@ -83,5 +94,5 @@ test-helm-chart:
- cd ${CHART_DIR:-"."}
- helm test --logs "$RELEASE_NAME"
extends:
- .use-kubernetes
- .use_kubernetes
- .chart_changes_rules
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment