Задать вопрос
@vlad1sat

Как в gitlab-ci сделать stage в pipeline необязательным при заливке изменений в ветку?

Возникла такая проблема:
Чтобы влить изменения при MR(gitlab не писал ошибку Pipeline must succeed), мне обязательно нужно выкатить на дев(пройти все stage), чтобы пройти весь pipeline, но хочется чтобы после прохождения 2 stage можно было уже вливать изменения.
Вот кейс, когда проверки работоспособности пройдены, но возможности заливки нет, а хотелось бы, чтобы на этом этапе можно было вливать:
66e3c65fa0692431366984.png
66e3c68004112557011173.png
Выкачен код на dev и только сейчас можно вливать изменения в другую ветку, а хотелось, чтобы gitlab давал возможность заливки при 1-м сценарии
66e3c6c64b166449048692.png
66e3c6cccff72780766913.png
Eсть какие-то теги или настройки, который можно указать в файле .gitlab-ci.yml?
  • Вопрос задан
  • 68 просмотров
Подписаться 1 Сложный Комментировать
Решения вопроса 1
zavoloklom
@zavoloklom
Software Engineering Manager
Для того чтобы сделать мануальную джобу необязательной нужно пометить ее как `allow_failure: true`. Документация.

Но если речь идет только про МР, то возможно использовать эту опцию внутри rules и например сделать так:

job_name:
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event"
      when: manual
      allow_failure: true
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы