Azure DevOps Используйте Build.SourceBranchName в качестве версии исправления NuGet для предварительного тестирования

Мы пытаемся использовать Azure DevOps для создания наших веток git и создания пакетов NuGet с помощью команды NuGet Pack, мы хотим автоматически создавать мастер, а также любые ветки функций, которые являются предварительными версиями.

Мы попытались установить формат номера сборки:

$ (BuildDefinitionName) _ $ (Дата: ггггMMdd). $ (BuildID). $ (Rev: .r) $ (Build.SourceBranchName)

Это дает нам ошибку:

[ошибка] Не удалось найти данные о номере версии в следующей переменной среды: BUILD_BUILDNUMBER. Значение переменной должно содержать подстроку с целыми положительными числами или.

Я установил формат номера сборки на 1.0.0-alpha, который работал, но в списке артефактов он отображается как 1.0.0.

Как мы можем использовать CI в Azure Devops для создания главной и всех наших функциональных веток, создания пакетов NuGet и применения имени ветки к версии NuGet, чтобы мы могли использовать эти пакеты в нашей тестовой среде и тестировать ветвь функций изолированно?

почему бы вам не настроить триггер сборки? почему вас волнует название сборки?   —  person user351711    schedule 18.05.2019

Поскольку нам нужен единый конвейер сборки, мы не хотим создавать по одному для каждой функциональной ветки. Затем мы хотим взять пакет NuGet, в названии которого есть ветвь функции, и развернуть его для тестирования.   —  person user351711    schedule 18.05.2019

Мы рады альтернативным предложениям по построению функциональных веток, развернутым с помощью NuGet, которые не требуют изменения конвейеров сборки для каждой новой функциональной ветки.   —  person user351711    schedule 18.05.2019

@ user351711 Вы пробовали $(Build.DefinitionName) и $(Build.BuildId) (возможно, ошибка связана с синтаксическими ошибками среды)?   —  person user351711    schedule 19.05.2019

Не запускается ли конвейер из-за указанной вами ошибки или не удается выполнить конкретный шаг? Почему NuGet помечен?   —  person user351711    schedule 20.05.2019

См. также:  Не удалось найти SDK SQLite.UWP.2015 при создании приложения UWP с использованием размещенного пула TFS
Понравилась статья? Поделиться с друзьями:
IT Шеф
Комментарии: 1
  1. user351711

    Как мы можем использовать CI в Azure Devops для создания главной и всех наших функциональных веток, создания пакетов NuGet и применения имени ветки к версии NuGet, чтобы мы могли использовать эти пакеты в нашей тестовой среде и тестировать функциональную ветвь изолированно?

    Прошу прощения за поздний ответ, надеюсь, он вам поможет.

    Боюсь, что мы не сможем использовать $(Build.SourceBranchName) в формате номера сборки в качестве версии nuget. После того, как я попробовал номер сборки в различных форматах, я обнаружил, что мы можем использовать только числовые данные в качестве версии nuget при использовании номера сборки в качестве версии nuget, в противном случае мы получим ошибку, как и вы:

    «переменная должна содержать подстроку с целыми или положительными целыми числами»

    Затем создаю ветку с числовыми данными, например 9, работает нормально.

    Итак, в качестве теста мы не могли применить имя ветки (String) к версии NuGet при использовании номера сборки в качестве версии nuget.

    В качестве обходного пути я использую параметр Use an environment variable, а затем определяю переменную nugetversion со значением $(Major).$(Minor).$(Patch)-$(Build.SourceBranchName):

    введите здесь описание изображения

    введите здесь описание изображения

    введите здесь описание изображения

    С помощью этого обходного пути мы можем использовать имя ветки в качестве версии пакета nuget, но у него также есть некоторые ограничения, то есть мы не могли использовать некоторые предопределенные переменные, такие как $(Rev:.r), $(BuildID) , это означает, что мы не можем автоматически увеличивать версию пакета nuget.

    Надеюсь это поможет.

    Спасибо за ответ, в конце концов я тоже попал сюда благодаря форуму в MSDN, где все жаловались, что формат номера сборки удаляет текст. Надеюсь, это поможет кому-то еще сэкономить часы, которые я потерял. person user351711; 23.05.2019

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: