gpt4 book ai didi

azure-devops - Azure Devops - 将 YAML 脚本中的变量设置为日期时间

转载 作者:行者123 更新时间:2023-12-04 04:13:01 25 4
gpt4 key购买 nike

我正在尝试为 Azure DevOps YAML 管道中的 NuGet 包生成一个名称。

上下文是在每个自动构建上使用包名称、分支名称、日期和递增修订号创建包。

packageName-branchName-year-month-day-revision

这样当一个新的特性分支被创建时,它将生成一个独特的包,可用于在需要它的项目中进行测试。

我正在努力从环境变量(例如日期或修订号)中设置 YAML 文件中的变量。

使用 ##vso 命令,我可以将“myVariable”设置为 hello 并将其打印出来。

- script: |
echo '##vso[task.setvariable variable=myVariable]hello'

- script: |
echo my variable is $(myVariable)

当我尝试从 PowerShell 设置变量时,如下所示,我收到以下错误“#$dateStr”未被识别为内部或外部命令”。
# Create a variable
- script: |
#$dateStr = (Get-Date).ToString('yyyy-MM-dd')
echo '##vso[task.setvariable variable=myVariable]#$dateStr'

# Print the variable
- script: |
echo my variable is $(myVariable)

当我尝试在 YAML 文件的变量部分设置一个变量时。
variables:
solution: '**/*.sln'
foo: $(Date:yyyyMMdd)

- script: |
echo my variable is $(foo)

变量未插值,输出为。

'我的变量是 $(Date:yyyyMMdd)'

如何根据 $(rev) 和 $(Date) 等环境变量创建变量?

最佳答案

我不认为有内置 date变量,但对于 powershell 情况,您只需要删除 #在变量之前,它必须用 " 括起来否则powershell不会扩展你的变量

echo "##vso[task.setvariable variable=myVariable]$dateStr"

关于azure-devops - Azure Devops - 将 YAML 脚本中的变量设置为日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54314170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com