Я уже довольно давно пытаюсь обновить номер сборки в Azure DevOps Pipelines, просматриваю различные вопросы и документацию по стеку и не могу понять, как решить мою проблему.
Номер сборки, который я хотел бы установить, будет: $(year:yy)$(DayOfYear)$(rev:.r)
.
Очевидно, это работает на конвейерах с использованием графического интерфейса (конвейеры не были созданы мной)
Что я пробовал до сих пор:
- task: UpdateBuildNumber@0
inputs:
buildNumber: '$(year:yy)$(DayOfYear)$(rev:.r)'
Write-Host "##vso[build.updatebuildnumber]$(year:yy)$(DayOfYear)$(rev:.r)"
И еще парочка их вариаций. Каждый раз получаю ошибку:
##[error]TF209010: The build number format $(year:yy)$(DayOfYear)$(rev:.r) contains invalid character(s), is too long, or ends with '.'. The maximum length of a build number is 255 characters. Characters which are not allowed include '"', '/', ':', '<', '>', '', '|', '?', '@', and '*'.
Я пробовал создавать переменные для каждой из дат и вместо этого использовать переменные, но это тоже не работает.
Любая помощь будет принята с благодарностью.
Это потому, что все эти переменные доступны только в том случае, если вы укажете их в name:
в своем YAML, а не в других задачах.
Из документы:
The following table shows how each token is resolved based on the previous example. You can use these tokens only to define a run number; they don't work anywhere else in your pipeline.
Итак, единственный вариант — просто настроить name: $(year:yy)$(DayOfYear)$(rev:.r)
.