Красные smoke-тесты не останавливают деплой: что не так в конфигурации пайплайна
Конфигурация пайплайна:
stages:
- test
- deploy
smoke:
stage: test
script:
- pytest -m smoke --alluredir=allure-results
allow_failure: true
deploy:
stage: deploy
script:
- ./deploy.sh production
На прод уехала сборка, в которой smoke-тесты были красными.
Почему это произошло?
- Из-за allow_failure задание считается информационным, и пайплайн идёт на деплой даже при красных тестах
- Тесты не могут остановить деплой, так как стадия test выполняется раньше стадии deploy
- Отчёт Allure не публикуется, поэтому результат тестов не учитывается пайплайном
- Заданию deploy не хватает ручного запуска: без него тесты не успевают отработать
