Я пишу интеграционные тесты для относительно сложного программного обеспечения. Я пытаюсь сэкономить время CI и недавно понял, что в случае успеха одного конкретного интеграционного теста мне не нужно запускать системные тесты для каждого модуля: у меня есть доказательство того, что проект работает при определенных обстоятельствах. Мне нужен только другой этап с тестами подсистемы, если основной тест интеграции не удался. Есть ли способ написать это в CI Gitlab? Нечто подобное (псевдокод):
stages:
- main_test
- optional_system_tests
main_test:
stage: main_test
(...)
subsystem_test1:
stage: optional_system_tests
skipIf: stage_succeeded(main_test)
subsystem_test2:
stage: optional_system_tests
skipIf: stage_succeeded(main_test)