Как использовать $ (Rev: r) в определении сборки VSTS? - PullRequest
2 голосов
/ 07 марта 2019

У меня есть требование, чтобы моя сборка генерировала файл abc.msi через Частный агент сборки. Теперь я добавил задачу Powershell для переименования abc.msi с помощью abc_3.0.0 $ (Rev: r) .msi, но задача Powershell Не удалось. Пожалуйста, помогите мне, как добиться этого. Я хотел бы иметь формат имени сборки, как abc_3.0.0.1, abc_3.0.0.2, abc_3.0.0.3 ... и т. д. Следует продолжать увеличивать значение $ (Rev: r) при увеличении сборок.

Команда Powershell, которую я выполняю:

Rename-Item -Path "C:\Softwares\vsts-agent-win-x86-2.147.1\_work\1\s\src\abcSetup\Release\abc.msi" -NewName "C:\Softwares\vsts-agent-win-x86-2.147.1\_work\1\s\src\abcSetup\Release\abc_3.0.0.$(Rev:r).msi"

Ошибка:

Rev: r: термин 'Rev: r' не распознается как имя командлета, функция, файл сценария или работоспособная программа. Проверьте правильность написания имя или, если путь был включен, убедитесь, что путь правильный и Попробуйте снова. В C: \ Softwares \ VSTS-агент-беспроигрышная x86-2.147.1_work_temp \ fef4cc6a-e677-4a08-ab29-73c7c31da755.ps1: 2 символ: 243 + ... ork \ 1 \ s \ src \ abcSetup \ Release \ abc_3.0.0. $ (Rev: r) .msi " + ~~~~~ + CategoryInfo: ObjectNotFound: (Rev: r: String) [], ParentContainsErrorRecordException + FullyQualifiedErrorId: CommandNotFoundException

[ошибка] PowerShell завершил работу с кодом «1».

[раздел] Окончание: переименование файла .MSI

1 Ответ

3 голосов
/ 08 марта 2019

В Azure DevOps $(rev:.r) - это специальный формат переменных, который работает только в поле Номер сборки в редакторе.

Используйте $ (Rev: .rr) дляубедитесь, что каждая завершенная сборка имеет уникальное имя.Когда сборка завершена, если больше ничего в номере сборки не изменилось, целочисленное значение Rev увеличивается на единицу.

Источник: Укажите общие параметры определения сборки

BUILD_BUILDNUMBER является предопределенной переменной.Если вы создаете переменную определения с этим именем, любые задачи, ссылающиеся на нее, получат значение этой переменной, а не системное значение.

Если вы хотите создать переменную счетчика, вы можете сделать это с помощьювыражение counter (). Подробнее см. Эту документацию .Он ориентирован на yaml, но будет работать и в редакторе.

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