From e0dfc8a3214b3f09cf04d101f4e5dd7a333cb5b0 Mon Sep 17 00:00:00 2001 From: Andrei Kvapil Date: Wed, 25 Feb 2026 16:01:58 +0100 Subject: [PATCH] fix(platform): clean up orphaned -rd HelmReleases in migrations 28 and 29 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Migrations 28 (mysql→mariadb) and 29 (virtual-machine→vm-disk+vm-instance) only handled user-facing HelmReleases but left the system-level -rd HelmReleases (mysql-rd, virtual-machine-rd) orphaned in cozy-system. These HRs reference ExternalArtifacts that no longer exist, causing persistent reconciliation failures. Add cleanup steps to delete the orphaned -rd HRs and their Helm secrets. Co-Authored-By: Claude Signed-off-by: Andrei Kvapil --- .../core/platform/images/migrations/migrations/28 | 13 +++++++++++++ .../core/platform/images/migrations/migrations/29 | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/packages/core/platform/images/migrations/migrations/28 b/packages/core/platform/images/migrations/migrations/28 index 1d3de565..5174c9b0 100755 --- a/packages/core/platform/images/migrations/migrations/28 +++ b/packages/core/platform/images/migrations/migrations/28 @@ -611,6 +611,19 @@ done echo "" echo "=== Migration complete (${#INSTANCES[@]} instance(s)) ===" +# ============================================================ +# STEP 8: Clean up orphaned mysql-rd system HelmRelease +# ============================================================ +echo "" +echo "--- Step 8: Clean up orphaned mysql-rd HelmRelease ---" +if kubectl -n cozy-system get hr mysql-rd --no-headers 2>/dev/null | grep -q .; then + echo " [DELETE] hr/mysql-rd" + kubectl -n cozy-system delete hr mysql-rd --wait=false +else + echo " [SKIP] hr/mysql-rd already gone" +fi +kubectl -n cozy-system delete secret -l "owner=helm,name=mysql-rd" --ignore-not-found + # Stamp version kubectl create configmap -n cozy-system cozystack-version \ --from-literal=version=29 --dry-run=client -o yaml | kubectl apply -f- diff --git a/packages/core/platform/images/migrations/migrations/29 b/packages/core/platform/images/migrations/migrations/29 index 05ba7de0..b72c2a93 100755 --- a/packages/core/platform/images/migrations/migrations/29 +++ b/packages/core/platform/images/migrations/migrations/29 @@ -715,6 +715,19 @@ done echo "" echo "=== Migration complete (${#INSTANCES[@]} instance(s)) ===" +# ============================================================ +# STEP 8: Clean up orphaned virtual-machine-rd system HelmRelease +# ============================================================ +echo "" +echo "--- Step 8: Clean up orphaned virtual-machine-rd HelmRelease ---" +if kubectl -n cozy-system get hr virtual-machine-rd --no-headers 2>/dev/null | grep -q .; then + echo " [DELETE] hr/virtual-machine-rd" + kubectl -n cozy-system delete hr virtual-machine-rd --wait=false +else + echo " [SKIP] hr/virtual-machine-rd already gone" +fi +kubectl -n cozy-system delete secret -l "owner=helm,name=virtual-machine-rd" --ignore-not-found + # Stamp version kubectl create configmap -n cozy-system cozystack-version \ --from-literal=version=30 --dry-run=client -o yaml | kubectl apply -f-