Задание формата номера сборки условно - PullRequest
0 голосов
/ 20 февраля 2020

Я использую файл YML и пытаюсь установить формат номера сборки, используя следующий фрагмент, но я не совсем уверен, как получить `Build.SourceBranch 'в форматирование.

Я пытался использовать $ (Build.SourceBranch) ... (Build.SourceBranch) и Build.SourceBranch

Я пытаюсь настроить вывод, чтобы он выглядел как

20190220-create-yaml.2 et c, когда это ветвь элемента функции.

и просто 20190220.3, когда это основная ветвь.

variables:
    ${{ if ne(variables['Build.SourceBranch'], 'master') }}: 
      branchSuffix: ${{ format('-{0}', $(Build.SourceBranch)) }}
    ${{ if eq(variables['Build.SourceBranch'], 'master') }}: 
      branchSuffix: ''

name: $(Date:yyyyMMdd)$(branchSuffix)$(Rev:.r)

1 Ответ

1 голос
/ 20 февраля 2020

Как упоминал Ланс Ли, используйте Build.SourceBranchName вместо Build.SourceBranch. Кроме того, в функции format используйте Build.SourceBranchName переменную через variables функцию:

variables:
    ${{ if ne(variables['Build.SourceBranchName'], 'master') }}: 
      branchSuffix: ${{ format('-{0}', variables['Build.SourceBranchName']) }}
    ${{ if eq(variables['Build.SourceBranchName'], 'master') }}: 
      branchSuffix: ''

name: $(Date:yyyyMMdd)$(branchSuffix)$(Rev:.r)

Если вы хотите использовать $(Build.SourceBranch), добавьте к сравнению значение refs/heads:

ne(variables['Build.SourceBranch'], 'refs/heads/master')

...