Я пытаюсь запустить 2 типа тестов в зависимости от того, почему выполняется конвейер. При коммитах я хотел бы запустить этап сборки, а при запросах на слияние я хотел бы запустить этапы сборки и тестирования. Когда я делаю коммит, он запускает только сборку, но он также запускает сборку по запросам на слияние.
Я попытался указать только: merge_requests в моем .gitlab-ci.yml, но он все равно не зарегистрирует сцену.
stages:
- build
- deploy
- test
- deploy_prod
build:
image: "python:3.6.1"
stage: build
variables:
GIT_SUBMODULE_STRATEGY: 'recursive'
script:
- pip install --upgrade pip
- pip install -r lender_v2/requirements.txt
- pip install -r lender_v2/reggora_models/requirements.txt
- export FLASK_CONFIG=localhost
- cd lender_v2/smoke_tests && python3 -m unittest discover -p "smoke_*.py" -q --failfast
test:
image: "python:3.6.1"
stage: test
variables:
GIT_SUBMODULE_STRATEGY: 'recursive'
script:
- pip install --upgrade pip
- pip install -r lender_v2/requirements.txt
- pip install -r lender_v2/reggora_models/requirements.txt
- export FLASK_CONFIG=localhost
- cd lender_v2/test_project && python3 -m unittest discover ../test_project -p "test_*.py" -q --failfast
only:
- merge_requests
Я думал, что это должно запустить этап тестирования для merge_requests, но он не запустится в любое время.