Справочная информация:
У нас есть собственный инструмент CI / CD на базе FAKE , который выполняет следующий рабочий процесс:
- пользователь вводит 2 параметра:
$source-branch
и $target-environment
- pull
master
- pull
$source-branch
- pull
$target-environment
(существует ветвь git длякаждая среда: DEV
, TEST
и т. д., за исключением PROD
, который жестко задан в master
) - создать временную ветвь из
$target-environment
с именем $target-environment-$current-date-$source-branch
(например, DEV-201811271840-SomeNewFeature
) - объединить мастер во временную ветвь
- объединить
$source-branch
во временную ветвь - выполнить скрипт сборки
- deploy
- ifРазвертывание выполнено успешно, затем объедините временную ветвь в
$target-environment
. - удалите временную ветвь
Проблема:
Не вдаваясь в подробностио шагах сборки / развертывания (которые представляют собой совершенно другой разговор) я хотел бы знать, если / как я могу повторить этот рабочий процесс в конвейерах Azure.
Кажется, что вся документация и даже всепараметры в пользовательском интерфейсе относятся к другому варианту использования.
Мы хотим иметь возможность передавать наши ветви функций, объединять их с ветвями среды (и в конечном итоге с master
) после развертывания , а не до того, чтопочему мы выполняем этапы сборки / тестирования / развертывания во временной ветви, которая объединяется в $environment
ТОЛЬКО после успешного выполнения этапов сборки / тестирования / развертывания.
Вопрос:
Возможно ли это даже с помощью конвейеров Azure, не прибегая к пользовательскому коду?Я не нашел никакой документации об этом, и опции в пользовательском интерфейсе, похоже, тоже не помогают.