Skip to content

Commit f90fc6f

Browse files
committed
[platform] fix deleting bundles
Signed-off-by: kklinch0 <[email protected]>
1 parent d8f3f2d commit f90fc6f

4 files changed

Lines changed: 33 additions & 3 deletions

File tree

‎packages/core/installer/images/cozystack/Dockerfile‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ FROM alpine:3.21
3030

3131
RUN apk add --no-cache make
3232
RUN apk add helm kubectl --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community
33+
RUN apk add yq
3334

3435
COPY scripts /cozystack/scripts
3536
COPY --from=builder /src/packages/core /cozystack/packages/core

‎packages/core/platform/Makefile‎

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,18 @@ show:
77
helm template -n $(NAMESPACE) $(NAME) . --dry-run=server $(API_VERSIONS_FLAGS)
88

99
apply:
10-
helm template -n $(NAMESPACE) $(NAME) . --dry-run=server $(API_VERSIONS_FLAGS) | kubectl apply -f-
10+
@echo "Applying active HelmReleases..."
11+
helm template -n $(NAMESPACE) $(NAME) . --dry-run=server \
12+
| yq 'select(.metadata.annotations."cozystack.io/marked-for-deletion" != "true")' - \
13+
| kubectl apply -f-
14+
15+
delete:
16+
@echo "Deleting marked-for-deletion HelmReleases..."
17+
helm template -n $(NAMESPACE) $(NAME) . --dry-run=server \
18+
| yq 'select(.metadata.annotations."cozystack.io/marked-for-deletion" == "true")' - \
19+
| kubectl delete -f - --ignore-not-found=true
20+
21+
reconcile: apply delete
1122

1223
namespaces-show:
1324
helm template -n $(NAMESPACE) $(NAME) . --dry-run=server $(API_VERSIONS_FLAGS) -s templates/namespaces.yaml

‎packages/core/platform/templates/helmreleases.yaml‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,3 +80,21 @@ spec:
8080
{{- end }}
8181
{{- end }}
8282
{{- end }}
83+
84+
{{- range $name := $disabledComponents }}
85+
{{- if ne $name "" }}
86+
---
87+
apiVersion: helm.toolkit.fluxcd.io/v2
88+
kind: HelmRelease
89+
metadata:
90+
name: {{ $name }}
91+
namespace: {{ index $dependencyNamespaces $name | default "cozy-system" }}
92+
annotations:
93+
cozystack.io/marked-for-deletion: "true"
94+
labels:
95+
cozystack.io/repository: system
96+
cozystack.io/system-app: "true"
97+
spec:
98+
suspend: true
99+
{{- end }}
100+
{{- end }}

‎scripts/installer.sh‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ make -C packages/core/platform namespaces-apply
7070
ensure_fluxcd
7171

7272
# Install platform chart
73-
make -C packages/core/platform apply
73+
make -C packages/core/platform reconcile
7474

7575
# Install basic charts
7676
if ! flux_is_ok; then
@@ -93,5 +93,5 @@ done
9393
trap 'exit' INT TERM
9494
while true; do
9595
sleep 60 & wait
96-
make -C packages/core/platform apply
96+
make -C packages/core/platform reconcile
9797
done

0 commit comments

Comments
 (0)