You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure DevOps传统发布界面能否用单个XDT转换任务处理多配置文件?

合并Azure DevOps传统发布界面中的XDT配置转换任务

可以将这5个独立的qetza.xdttransform.xdttransform-task.xdttransform任务合并为单个任务完成,推荐使用PowerShell脚本任务实现批量处理,具体操作如下:

  1. 在传统发布界面中移除原有5个XDT转换任务,添加一个PowerShell脚本任务
  2. 在脚本任务的「脚本」输入框中填入以下代码:
# 定义需处理的目录与目标配置文件映射
$transformTasks = @(
    @{ WorkingFolder = "$(System.DefaultWorkingDirectory)/sources/A1"; TargetFile = "A1.exe.config" },
    @{ WorkingFolder = "$(System.DefaultWorkingDirectory)/sources/1A"; TargetFile = "1A.exe.config" },
    @{ WorkingFolder = "$(System.DefaultWorkingDirectory)/sources/Three"; TargetFile = "Three.exe.config" },
    @{ WorkingFolder = "$(System.DefaultWorkingDirectory)/sources/4a"; TargetFile = "4a.exe.config" },
    @{ WorkingFolder = "$(System.DefaultWorkingDirectory)/sources/ConsoleApp1"; TargetFile = "ConsoleApp1.exe.config" }
)

# 遍历执行所有XDT转换
foreach ($task in $transformTasks) {
    $sourcePath = Join-Path -Path $task.WorkingFolder -ChildPath "app.tokenize.config"
    $targetPath = Join-Path -Path $task.WorkingFolder -ChildPath $task.TargetFile

    # 调用XDT转换工具
    & "$env:AGENT_TOOLSDIRECTORY/qetza.xdttransform/xdttransform-task/xdttransform.exe" `
        -s "$sourcePath" `
        -t "$targetPath" `
        -d "$task.WorkingFolder"

    # 验证转换结果
    if ($LASTEXITCODE -ne 0) {
        Write-Error "配置转换失败:路径 $($task.WorkingFolder)"
        exit 1
    }
    Write-Host "配置转换完成:路径 $($task.WorkingFolder)"
}

注意事项:

  • 脚本通过遍历预定义的目录映射,一次性完成所有转换操作
  • 需确保发布代理已正确安装qetza XDT转换工具(原任务可正常运行则无需额外配置)
  • 脚本会校验每个转换的执行状态,若任一转换失败会立即终止任务并抛出错误

内容的提问来源于stack exchange,提问作者jmoreno

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 19:42:22