【发布时间】:2019-07-29 09:33:11
【问题描述】:
我要求我的构建通过私有构建代理生成 abc.msi 文件。现在我添加了 Powershell 任务以使用 abc_3.0.0$(Rev:r).msi 重命名 abc.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”未被识别为 cmdlet 的名称, 函数、脚本文件或可运行的程序。检查拼写 名称,或者如果包含路径,请验证路径是否正确并 再试一次。在 C:\Softwares\vsts-agent-win-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 文件
【问题讨论】:
-
我认为它只适用于 build id,所以你可以使用 buildid 变量
-
@4c74356b41 你不能在 buildid 中使用它(因为你不能配置它,这是一个递增的整数)。您可能是指内部版本号(变量'build.buildnumber')
-
也许吧,我不记得了,我不怎么用那两个
-
@PatrickLu-MSFT,感谢您的回复。当然我会在这里分享答案。解决方案:在构建定义中使用 abc_$(Build.BuildNumber).msi,在我使用 3.0.0.$(Rev:r) 的选项下。然后生成的构建版本是 abc_3.0.0.1.msi 和 abc_3.0.0.2.msi ......等等......这样我解决了这个问题。谢谢。
标签: azure-devops