Azure DevOps, выпускные конвейеры YAML?
Я следую этому процессу для создания конвейера сборки YAML для проекта.NET Core Web API:
https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started-yaml?view=vsts
Когда дело доходит до его выпуска, я отмечаю, что (недавно переименованный) Azure DevOps, похоже, не поддерживает YAML для определения выпускных конвейеров. Однако я вижу, что задачи развертывания определены, например:
https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-rm-web-app-deployment?view=vsts
Ожидаем ли мы обновления функциональности релизов-конвейеров для поддержки YAML, и если да, то когда?
Ответы
Ответ 1
На момент написания этого ответа временная шкала функций отражает релизы yaml, наступающие в третьем квартале 2018 года.
https://docs.microsoft.com/en-us/azure/devops/release-notes/
Обновление: это было поднято несколько раз. Рекомендуется проверять комментарии ниже, так как люди предоставляют обновления по мере их обнаружения.
Ответ 2
Группа продуктов работает над этим. Вы можете отслеживать обновление с помощью заметок Release.
Ответ 3
В данный момент я в середине делаю что-то вроде этого, но я использую текущие API REST. Что я делаю, что-то похожее на то, что я документировал здесь (как вы импортируете определение выпуска в VSTS?). В основном я сохраняю шаблонный файл JSON Release Pipeline в репозиторий исходного кода с переменными заполнителями и номером версии. Затем у вас есть сценарий PowerShell, который вызывает Azure DevOps (это длинное слово, я предпочитаю набирать VSTS, возможно, я начну вводить AD)
- API-интерфейсы REST для проверки Release Pipeline существуют - работает
- Создать, если он не существует - работает
- Сравните внедренные версии и обновления и при необходимости (я застрял здесь, но я разрешу его, возвращая ошибку, когда обновляемый конвейер не изменился, хотя я его изменил).
Я хочу, чтобы это выполнялось во время конвейера Build, так что мне больше не нужно вручную редактировать множество подобных конвейеров Release. Я бы предпочел, чтобы это был файл YAML, но это то, что у меня есть сегодня. Надеюсь, это поможет.
Ответ 4
Опыт создания конвейера сборки YAML находится в предварительном просмотре. (сегодня 2018-12-04)
YAML для освобождения трубопроводов, кажется, есть способы покинуть еще: 2019 Q2
Функции предварительного просмотра могут быть включены из вашего профиля, например:
РЕДАКТИРОВАТЬ: Как указывает nullforce в комментариях, это позволяет использовать только YAML для построения конвейеров, а не для выпуска конвейеров.
ОБНОВЛЕНИЕ (2019-05-16): После Microsoft "Build 2019" полная версия YAML для сборки и развертывания теперь должна быть возможной в одном и том же файле конвейеров YAML.
Ответ 5
К вашему сведению, вы можете публично проверить текущее состояние здесь:
https://dev.azure.com/mseng/AzureDevOpsRoadmap/_workitems/edit/1364226
Ответ 6
Трубопроводы состоят из одного или нескольких рабочих мест и могут включать в себя ресурсы и переменные. Работы состоят из одного или нескольких шагов плюс некоторые данные, относящиеся к заданию. Шагами могут быть задачи, скрипты или ссылки на внешние шаблоны. Это отражается в структуре файла YAML. Пожалуйста, посетите здесь подробности