Как я могу контролировать свой номер сборки с помощью Azure DevOps? - PullRequest
2 голосов
/ 03 ноября 2019

У меня так много разочарований в DevOps Azure. В моем формате номера сборки я хотел бы иметь

  • число, которое перезагружается до 0, когда я обновляю свою основную минорную версию.
  • Но я также хотел бы иметь реальнуюномер сборки, который никогда не сбрасывается, какой бы ни был мой формат номера сборки. Этот номер сборки также может использоваться всеми конвейерами моего проекта. Возможно ли это?

Я не использую формат YAML. Я использую классические интерфейсы со страницей параметров, чтобы установить формат сборки. На данный момент у меня есть это:

enter image description here

Это работает, за исключением того, что каждый месяц r число перезапускается с 0. Я хочу, чтобы оно продолжалось.

РЕДАКТИРОВАТЬ

enter image description here

Я до сих пор не определил свой окончательный формат. Я хотел бы понять все возможности. Теперь я обнаружил свойство $(BuildID) У меня есть еще один вопрос. Возможно ли иметь что-то похожее на переменную $(Rev:r), но которое проверяет только левую часть моего номера сборки.

Пример:

4.16.$(SequenceFor[4.16]).$(BuildID)

На самом деле я бы хотел установить вручнуюМажорная и минорная версии, и пусть система обновляет одну за другой сборку и использует ревизию для глобального $(BuildID).

1 Ответ

0 голосов
/ 03 ноября 2019

$(rev:r) перезапускается, когда номер сборки изменяется в любом символе, поэтому это причина, по которой он перезапускается всякий раз, когда меняется основной / второстепенный или государственный.

Так что если вы хотите использовать инкрементныйуникальный номер, который вы не можете использовать $(rev:r), потому что тогда он будет перезапускаться при каждой сборке.

Если вам нужен номер, который зависит от старшего и младшего номеров, вам нужно использовать counter выражение :

Создать 2 переменные:

  1. major-minor = 4.16

И переменную, которая зависит от его значения итакже есть счетчик:

revision = $[ counter(variables['major-minor'],0) ]

enter image description here

Номер сборки будет:

$(major-minor).$(revision).$(Build.BuildId)

Сейчас, если вы измените major-minor (на 4.17 или 5.16), revision будет снова 0.

...