Увеличить значение переменной в сборке TFS +1

У меня есть Microsoft Visual Studio Team Foundation Server (версия 15.117.26714.0) с предопределенной переменной $(ProjectBuildNumber).

Есть ли способ увеличить в процессе сборки значение переменной с второстепенным номером сборки на +1?

$(ProjectBuildNumber)  =   663

Итак, в следующей сборке будет:

$(ProjectBuildNumber)  =   664

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

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


person Vasiliy Vegas    schedule 14.05.2018    source источник


Ответы (2)


Вы не можете ссылаться на переменные в номере сборки определения сборки. Но что вы можете сделать, так это переопределить номер сборки в самой сборке. Вы можете использовать волшебную команду журнала или использовать мою задачу переменных VSTS. чтобы установить Build.BuildNumber в самой сборке. Задача Variables расширяет ссылки на переменные. Возможно, вы могли бы просто установить текущее значение, чтобы расширить его.

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

Чтобы выполнить команду журнала самостоятельно, используйте пакетный сценарий, PowerShell или bash для вывода в консоль следующей конкретной строки:

##vso[build.updatebuildnumber]номер сборки

Обновить номер сборки для текущей сборки. Пример:

##vso[build.updatebuildnumber]my-new-build-number

Минимальная версия агента: 1.88

источник: https://github.com/Microsoft/vsts-tasks/blob/master/docs/authoring/commands.md

Альтернативный вариант — использовать параметр $(Rev):

Build.BuildNumber = 1.1.$(Rev:.r)  

Это будет автоматически увеличивать переменную каждый раз при запуске сборки.

Чтобы обновить переменную в определении сборки, используйте еще одно расширение:

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

Эти вещи в сочетании должны быть в состоянии получить то, что вы хотите.

person jessehouwing    schedule 14.05.2018
comment
Итак, если я правильно вас понял, я не могу постоянно изменять значение переменной, используя задачи сборки? Только в контексте сборки проекта? $(Rev) не является вариантом, потому что в VSTS есть несколько проектов, и каждый раз, когда я запускаю проект, значение $(Rev) увеличивается. - person Vasiliy Vegas; 14.05.2018
comment
No Rev просто генерирует уникальный номер версии. Если вы предварительно укажете номер версии с названием проекта, будут созданы уникальные версии. - person jessehouwing; 14.05.2018
comment
Чтобы навсегда изменить переменную, используйте расширение здесь: marketplace.visualstudio .com/, но вам также потребуется запустить задачу «Установить переменную», чтобы сама сборка приняла правильное значение. - person jessehouwing; 14.05.2018

В разделе переменных

установите значение ProjectBuildNumber в $[counter('', 663)].

Это поставит в очередь сборку, начиная с 663 как ProjectBuildNumber, и будет увеличиваться на 1 для последующей очереди сборок.

person Jabez    schedule 05.06.2019
comment
Это также работает для выпусков и повторных развертываний выпусков! - person Noppey; 16.10.2020