Пользователь Go CD Trigger всегда получает значение «изменений» в многоступенчатых конвейерах.

Мы используем Go CD для наших конвейеров CI. Мы создали несколько пользователей Go CD, и все они имеют доступ к запуску любого конвейера в Go CD.

Мы используем несколько конвейеров для завершения цикла от разработки к продукту, однако мы заметили, что можно добиться того же, используя один конвейер с несколькими этапами (экономия места на диске за счет нескольких конвейеров), каждый из которых представляет собой развертывание в среде (т. е. олень, продукт).

Наше требование состоит в том, чтобы получить GO_TRIGGER_USER, настроенный системой Go CD, и на основе этой информации принять какое-либо решение в пользовательском скрипте. Он отлично работает для одноэтапных сборок, т. е. если изменения передаются в репозиторий, запуская конвейеры, переменная среды GO_TRIGGER_USER получает значение «изменения», в противном случае она устанавливается на имя пользователя Go CD, который вручную запустил конвейер.

Проблема возникает при многоэтапных сборках; начиная со 2-го этапа конвейера, который всегда устанавливает для GO_TRIGGER_USER значение «изменения», даже если конвейер запускается вручную пользователем Go CD.

Любая идея или обходной путь, чтобы избежать такого поведения?


person Furhan S.    schedule 09.08.2016    source источник


Ответы (1)