Skip to content

Replace Skaffold-dependent teardown with label-based discovery#31

Merged
trevor-vaughan merged 1 commit into
mainfrom
fix/gitlab-teardown-job
Jun 29, 2026
Merged

Replace Skaffold-dependent teardown with label-based discovery#31
trevor-vaughan merged 1 commit into
mainfrom
fix/gitlab-teardown-job

Conversation

@trevor-vaughan

Copy link
Copy Markdown
Collaborator

The sk:delete task previously required the generated overlay directory
to exist so skaffold delete could re-render manifests. This broke on
stage/prod when the directory was missing (different CI runner, expired
artifacts).

The new approach queries the namespace for resources labelled
app.kubernetes.io/managed-by=skaffold and deletes them directly,
then separately cleans up PVCs. After deletion it reports both what
was torn down and what was preserved (secrets, non-Skaffold ConfigMaps)
so operators can manually finish cleanup.

  • Extract teardown logic into scripts/lib/teardown.sh (same sourceable
    pattern as grafana-url.sh)
  • Update sk:delete to source and call teardown_namespace()
  • Add 10 bats tests covering: label-based deletion, PVC handling,
    preserved-resource reporting, empty namespace, overlay cleanup,
    NAMESPACE validation

Assisted-by: Claude Opus 4.6
Signed-off-by: Trevor Vaughan tvaughan@redhat.com

The sk:delete task previously required the generated overlay directory
to exist so skaffold delete could re-render manifests. This broke on
stage/prod when the directory was missing (different CI runner, expired
artifacts).

The new approach queries the namespace for resources labelled
app.kubernetes.io/managed-by=skaffold and deletes them directly,
then separately cleans up PVCs. After deletion it reports both what
was torn down and what was preserved (secrets, non-Skaffold ConfigMaps)
so operators can manually finish cleanup.

- Extract teardown logic into scripts/lib/teardown.sh (same sourceable
  pattern as grafana-url.sh)
- Update sk:delete to source and call teardown_namespace()
- Add 10 bats tests covering: label-based deletion, PVC handling,
  preserved-resource reporting, empty namespace, overlay cleanup,
  NAMESPACE validation

Assisted-by: Claude Opus 4.6
Signed-off-by: Trevor Vaughan <tvaughan@redhat.com>
@trevor-vaughan trevor-vaughan marked this pull request as ready for review June 29, 2026 16:03
@trevor-vaughan trevor-vaughan merged commit 455fd2b into main Jun 29, 2026
23 checks passed
@trevor-vaughan trevor-vaughan deleted the fix/gitlab-teardown-job branch June 29, 2026 16:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant