在 TFS 2018 构建中使用 PowerShell 修改 .exe 的 AssemblyInfo
Modify the .exe's AssemblyInfo using PowerShell in TFS 2018 build
我想使用 PowerShell 更新我的应用程序的程序集信息,例如 TFS vNext 构建中的产品名称、文件描述。我想在构建定义中使用构建变量并将其传递给脚本。
我在这个(https://writeabout.net/2015/11/01/set-assembly-and-app-version-to-a-matching-build-name-in-tfs-2015-or-vso-build-vnext/)的帮助下做了同样的事情来更新版本号。
我需要有关脚本的帮助,以用新值替换 "Product Name" 或 "Description" 值。
您可以用一个小脚本替换名称和描述:
Param(
[string]$filePath,
[string]$newProductName,
[string]$newProductDesc
)
$patternProductName = '\[assembly: AssemblyProduct\("(.*)"\)\]'
$patternProductDesc = '\[assembly: AssemblyDescription\("(.*)"\)\]'
(Get-Content $filePath) | ForEach-Object{
if($_ -match $patternProductName){
'[assembly: AssemblyProduct("{0}")]' -f $newProductName
}
elseif($_ -match $patternProductDesc){
'[assembly: AssemblyDescription("{0}")]' -f $newProductDesc
}
else{
$_
}
} | Set-Content $filePath
现在在构建期间调用此脚本并在参数中发送 3 个参数:AssmeblyInfo 文件路径、新产品名称和新产品描述。
我想使用 PowerShell 更新我的应用程序的程序集信息,例如 TFS vNext 构建中的产品名称、文件描述。我想在构建定义中使用构建变量并将其传递给脚本。
我在这个(https://writeabout.net/2015/11/01/set-assembly-and-app-version-to-a-matching-build-name-in-tfs-2015-or-vso-build-vnext/)的帮助下做了同样的事情来更新版本号。
我需要有关脚本的帮助,以用新值替换 "Product Name" 或 "Description" 值。
您可以用一个小脚本替换名称和描述:
Param(
[string]$filePath,
[string]$newProductName,
[string]$newProductDesc
)
$patternProductName = '\[assembly: AssemblyProduct\("(.*)"\)\]'
$patternProductDesc = '\[assembly: AssemblyDescription\("(.*)"\)\]'
(Get-Content $filePath) | ForEach-Object{
if($_ -match $patternProductName){
'[assembly: AssemblyProduct("{0}")]' -f $newProductName
}
elseif($_ -match $patternProductDesc){
'[assembly: AssemblyDescription("{0}")]' -f $newProductDesc
}
else{
$_
}
} | Set-Content $filePath
现在在构建期间调用此脚本并在参数中发送 3 个参数:AssmeblyInfo 文件路径、新产品名称和新产品描述。