1.8 KiB
1.8 KiB
Интеграционный тест: P1/P2 (namespace lifecycle hardening)
Контекст
Ветка: fix/namespace-lifecycle-hardening (fission-src)
Коммиты: P1 (auto-recovery failed NS), P2 (adopt orphaned pods)
1. Проверка P1: auto-recovery failed NS
- Создать tenant (managed namespace) через fission-console UI
- Нарочно сломать ServiceAccount или RoleBinding (например, удалить SA или RB)
- kubectl delete sa fission-fetcher -n
- Проверить, что NS уходит в фазу
failed(видно в UI) - Через 30 сек NS должен автоматически восстановиться (phase → active)
- Проверить, что SA/RB пересозданы, функции снова работают
2. Проверка P2: adopt orphaned pods после рестарта executor
- Сделать rolling restart executor (kubectl rollout restart deployment fission-executor -n fission)
- Проверить, что:
- В managed NS нет orphaned pods (kubectl get pods -n — все pods с новым instanceID)
- Нет лишних cold start (функции стартуют быстро)
- В логах executor есть строки:
- PreRegisterManagedNamespaces
- adopt
- cleanup
3. Проверить отсутствие регрессий
- Создание/удаление tenant работает
- Функции запускаются, логи доступны
- Нет ошибок в UI/логе
4. (Опционально) e2e-скрипт
- Автоматизировать сценарии выше bash-скриптом или через API fission-console
Если нужна помощь с командами — пиши!