delete_collection returns before the apiserver actually removes objects — finalizers on PVs, PVCs, and pod graceful shutdown all propagate async. Add _wait_for_labeled_deletions that polls the same label selector across every kind we triggered a delete for, with a 120s timeout. down() now returns only once the cluster has actually settled, so callers (tests, ansible, cryovial) don't need their own wait loops. Update the k8s-deploy test's assert_no_labeled_resources to rely on that synchronous contract — no polling in the test. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| helm | ||
| __init__.py | ||
| cluster_info.py | ||
| deploy_k8s.py | ||
| helpers.py | ||
| k8s_command.py | ||