Создать тег во время конвейера выпуска в azure -devops - PullRequest
1 голос
/ 28 января 2020

Настройка

При запуске конвейера выпуска я

  1. использую артефакт проекта build-pipeA (который использует проект репозитория A)
  2. этот артефакт представляет собой сборку пакета узла
  3. Я внедряю (пере-версию) версию пакета (используя переменную конвейера VERSION), а затем выпускаю в реестр npm на последнем этапе.

Цель Помимо всех работ по сборке / выпуску, у нас есть одна конкретная проблема c, которая отсутствует checkout of the repository на этапе выпуска. Мы не хотим иметь хранилище для фактического «перестроения» чего-либо, но для пометки коммита, который мы строим, используя переменную $VERSION и проталкиваем его в хранилище.

Issue

Я знаю, как получить commit hash нашей сборки репозитория исходного проекта (env var Build.SourceVersion) и имя репозитория (env var Build.Repository.Name), но я не понимаю, как на самом деле я получил бы хранилище извлечено, так как я скучаю по учетным данным.

Прямо сейчас у меня есть хранилище на Github (частное хранилище), хотя, возможно, также переместимся в частное Bitbucket.

Фактический конкретный вопрос: как можно было бы один раз оформить хранилище с помощью

  • либо с использованием stati c name
  • или с использованием Build.Repository.Name

И с

  • либо общая задача c (некоторые git репо)
  • , либо заданная c задача репо SCM (например, checkout-from-github или checkout-from-bitbucket с использованием какого-либо служебного соединения).

Полагаю, мне нужно что-то f учетные данные, в моем текущем случае это будет какой-то токен доступа Github или аналогичный (oAuth)?

1 Ответ

2 голосов
/ 29 января 2020

Так что я не уверен, используете ли вы GUI версии или более новую функцию многоступенчатого конвейера .

Для релиза classi c GUI вы можете добавить артефакт, являющийся вашим репозиторием Github, из редактора определений релиза . Когда вы go добавляете артефакт, он попросит вас сконфигурировать соединение со службой обратно на github, или вы можете использовать существующее соединение.

В редакторе определения релиза на уровне задания агента вы захотите чтобы убедиться, что проверены Разрешить сценариям доступ к токену OAuth

enter image description here

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

cd $(Agent.ReleaseDirectory)\_enufacas_azureDevOps.Postman
git tag  Rel-$(Build.BuildNumber)
git push --tags

Многоступенчатый конвейер также имеет аналогичный путь, используя задачу проверки

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