Мы используем GitLab CI / CD на частном сервере GitLab и поддерживаем довольно сложный gitlab-ci.yaml с включениями и правилами:
- Некоторые конвейерные задания выполняются только на определенных c ветвях
- Некоторые конвейерные задания выполняются, только если заданы указанные c переменные
- Некоторые конвейерные задания берутся из включения без изменений
- Некоторые конвейерные задания берутся из включения, но перезаписано в текущем файле
- et c.
В настоящее время наши шаги по обеспечению качества:
- Использование GitLab API для линтинга файла
- Создание, тестирование и развертывание тестового проекта для приблизительного тестирования конвейера (дымовые тесты)
Мы хотели бы добавить модульные тесты, в которых мы можем проверить поведение конвейера при определенных условиях c (указанных c ветвей, переменных, других условиях), чтобы мы могли гарантировать, что указанные c настройки приводят к указанной c конфигурации конвейера. К сожалению, мне не удалось найти никакой информации о том, как правильно тестировать конвейеры GitLab CI. Как мы можем это сделать?