fix(test): wait for namespace termination before restart
All checks were successful
Lint Checks / Run linter (pull_request) Successful in 6m10s
Deploy Test / Run deploy test suite (pull_request) Successful in 16m28s
K8s Deploy Test / Run deploy test suite on kind/k8s (pull_request) Successful in 25m15s
K8s Deployment Control Test / Run deployment control suite on kind/k8s (pull_request) Successful in 27m14s
Webapp Test / Run webapp test suite (pull_request) Successful in 36m47s
Smoke Test / Run basic test suite (pull_request) Successful in 35m54s

Replace fixed sleep with a polling loop that waits for the deployment
namespace to be fully deleted. Without this, the start command fails
with 403 Forbidden because k8s rejects resource creation in a
namespace that is still terminating.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Prathamesh Musale 2026-03-10 07:01:27 +00:00
parent b85c12e4da
commit aac317503e

View File

@ -230,7 +230,15 @@ fi
# Use --delete-volumes to clear PVs so fresh PVCs can bind on restart.
# Bind-mount data survives on the host filesystem; provisioner volumes are recreated fresh.
$TEST_TARGET_SO deployment --dir $test_deployment_dir stop --delete-volumes --skip-cluster-management
sleep 5
# Wait for the namespace to be fully terminated before restarting.
# Without this, 'start' fails with 403 Forbidden because the namespace
# is still in Terminating state.
for i in {1..60}; do
if ! kubectl get namespace laconic-${deployment_id} 2>/dev/null | grep -q .; then
break
fi
sleep 2
done
$TEST_TARGET_SO deployment --dir $test_deployment_dir start --skip-cluster-management
wait_for_pods_started
wait_for_log_output