GitLab CI - только: изменения: вариант использования - PullRequest
0 голосов
/ 30 сентября 2019

В архитектуре одноуровневых микросервисов с одним сервисом на папку я пытаюсь использовать новую функцию CI refs: changes.

Мой конвейер состоит из построения образа докера в каждой папке (= сервис), затем, если все будет зеленым, все службы будут развернуты на AWS.

Вот предварительный просмотр того, как это выглядит:

CI Pipeline

На изображении мы видим, что задание api-build не выполнено. Это означает, что задания deploy не будут выполняться (предположим, что ! означает пропуск).

Проблема в API-файле была обнаружена в папке API-интерфейса. Поэтому после исправления и нажатия на исправление будут выполняться только задания API. Это ожидается из-за:

    only:
        refs:
            - release
            - uat
        changes:
            - "api/**/*"
            - "*"

, что дает мне:

enter image description here

Другие службы были пропущены в предыдущем конвейереи теперь не развернуты, потому что они не содержат изменений.

Теперь вопрос / вопрос: это хороший подход для такого типа монорепо? Как мне справиться с этим?

У меня более 24 служб, и если они каждый раз запускают задание без изменений, это замедляет развертывание (и это тратит ресурсы).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...