fix: survival test — false alarm at 5.2, empty CLEANUP entries, teardown guard
This commit is contained in:
@@ -257,6 +257,7 @@ deploy_ns_has() {
|
|||||||
# cleanup NAME — удалить сервис (teardown)
|
# cleanup NAME — удалить сервис (teardown)
|
||||||
cleanup() {
|
cleanup() {
|
||||||
local name="$1"
|
local name="$1"
|
||||||
|
[[ -z "$name" ]] && return 0 # пустое имя — пропускаем
|
||||||
api_code DELETE "$API/services/$name" > /dev/null 2>&1 || true
|
api_code DELETE "$API/services/$name" > /dev/null 2>&1 || true
|
||||||
sleep 2
|
sleep 2
|
||||||
}
|
}
|
||||||
@@ -267,6 +268,7 @@ teardown() {
|
|||||||
if [[ ${#CLEANUP_NAMES[@]} -gt 0 ]]; then
|
if [[ ${#CLEANUP_NAMES[@]} -gt 0 ]]; then
|
||||||
echo -e "\n${CYAN}[TEARDOWN]${RESET} удаляю тестовые сервисы..."
|
echo -e "\n${CYAN}[TEARDOWN]${RESET} удаляю тестовые сервисы..."
|
||||||
for name in "${CLEANUP_NAMES[@]}"; do
|
for name in "${CLEANUP_NAMES[@]}"; do
|
||||||
|
[[ -z "$name" ]] && continue # пропускаем пустые элементы
|
||||||
cleanup "$name"
|
cleanup "$name"
|
||||||
echo -e " ${CYAN}[TEARDOWN]${RESET} удалён: $name"
|
echo -e " ${CYAN}[TEARDOWN]${RESET} удалён: $name"
|
||||||
done
|
done
|
||||||
@@ -306,12 +308,14 @@ info "5.1 CREATE + UPLOAD 6 функций параллельно (3 Python / 3
|
|||||||
(set +e; create_node_deploy "$FB6" 256 '{"GRP_VAR":"nd3"}') &
|
(set +e; create_node_deploy "$FB6" 256 '{"GRP_VAR":"nd3"}') &
|
||||||
wait
|
wait
|
||||||
|
|
||||||
info "5.2 Проверяем что все 6 CRD созданы..."
|
info "5.2 Проверяем что все 6 CRD созданы (GET → 200)..."
|
||||||
|
# Небольшая пауза — контроллер устанавливает phase асинхронно после create
|
||||||
|
sleep 5
|
||||||
all_created=true
|
all_created=true
|
||||||
for name in "${FB_ALL[@]}"; do
|
for name in "${FB_ALL[@]}"; do
|
||||||
ph=$(svc_phase "$name")
|
http_check=$(api_code GET "$API/services/$name")
|
||||||
if [[ -z "$ph" ]]; then
|
if [[ "$http_check" != "200" ]]; then
|
||||||
fail "CRD $name не существует (create/upload провалился)"
|
fail "CRD $name не существует → HTTP $http_check (create/upload провалился)"
|
||||||
all_created=false
|
all_created=false
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
@@ -416,11 +420,15 @@ for name in "${FB_ALL[@]}"; do
|
|||||||
[[ "$code" == "404" ]] || { fail "$name: GET после DELETE → $code (ожидали 404)"; del_ok=false; }
|
[[ "$code" == "404" ]] || { fail "$name: GET после DELETE → $code (ожидали 404)"; del_ok=false; }
|
||||||
done
|
done
|
||||||
$del_ok && pass "все 6 функций удалены, GET → 404"
|
$del_ok && pass "все 6 функций удалены, GET → 404"
|
||||||
# Убираем из cleanup (уже удалены)
|
# Убираем из cleanup (уже удалены) — фильтруем пустые и fb-имена
|
||||||
CLEANUP_NAMES=( "${CLEANUP_NAMES[@]}" )
|
new_cleanup=()
|
||||||
for name in "${FB_ALL[@]}"; do
|
for e in "${CLEANUP_NAMES[@]}"; do
|
||||||
CLEANUP_NAMES=( "${CLEANUP_NAMES[@]/$name}" )
|
skip=false
|
||||||
|
for fn in "${FB_ALL[@]}"; do [[ "$e" == "$fn" ]] && skip=true; done
|
||||||
|
[[ -z "$e" ]] && skip=true
|
||||||
|
$skip || new_cleanup+=("$e")
|
||||||
done
|
done
|
||||||
|
CLEANUP_NAMES=( "${new_cleanup[@]}" )
|
||||||
|
|
||||||
# Ждём очистки k8s
|
# Ждём очистки k8s
|
||||||
sleep 15
|
sleep 15
|
||||||
|
|||||||
Reference in New Issue
Block a user