В нашем проекте у нас есть несколько компонентов, разработанных отдельными командами, имеющими отдельные репозитории git. Все компоненты имеют задание фиксации и задание упаковки и публикуют артефакты в артефакте.
Проблема возникает, когда мы хотим развернуть все компоненты как систему.
Поскольку все эти компоненты развертываются на отдельных серверах, а затем взаимодействуют друг с другом для функционирования... возникает много несоответствий во времени из-за того, что какая-то более новая версия компонента развертывается на одном из серверов.
Например У меня есть компоненты A, B, C, и я хочу переместить следующие версии A1, B1, C1 в конвейер развертывания и тестирования. Как я могу гарантировать, что ни одна новая версия компонента не будет развернута в среде QA (на серверах). Я использую Jenkins в качестве инструмента CI/CD. Кажется, мне нужен какой-то инструмент интеграции или упрощенный инструмент управления конфигурацией для управления версиями моей системы в целом, включая все компоненты, которые я могу продвигать в конвейере развертывания.
Надеюсь, я смог описать свой вопрос. Предложения по решению этой ситуации будут действительно полезными.
Спасибо,