Build 无法在VSTS中保存/修改导入的生成定义

Build 无法在VSTS中保存/修改导入的生成定义,build,azure-devops,build-definition,Build,Azure Devops,Build Definition,我正在尝试将构建从一个项目导出到另一个项目。项目位于不同的集合中。我有收集管理,所以烫发应该是好的,但只是为了确保我授予自己的建设和项目管理 我在源项目中使用VSTS UI将构建导出为json,然后在目标项目中导入。所有任务都存在,但参数显示为灰色。我也无法启用/禁用任务。有一些参数需要填写,例如构建代理。我能够选择合适的代理。此时,我没有UI指示我在保存之前需要解决的未完成项。保存、放弃和队列选项均灰显 我可以添加一个新阶段,但我不能向该阶段添加任何任务。我还尝试提出yaml,并将其与源项目中

我正在尝试将构建从一个项目导出到另一个项目。项目位于不同的集合中。我有收集管理,所以烫发应该是好的,但只是为了确保我授予自己的建设和项目管理

我在源项目中使用VSTS UI将构建导出为json,然后在目标项目中导入。所有任务都存在,但参数显示为灰色。我也无法启用/禁用任务。有一些参数需要填写,例如构建代理。我能够选择合适的代理。此时,我没有UI指示我在保存之前需要解决的未完成项。保存、放弃和队列选项均灰显

我可以添加一个新阶段,但我不能向该阶段添加任何任务。我还尝试提出yaml,并将其与源项目中的yaml进行比较,没有区别


为什么我不能保存导入的生成定义?

在替换我尝试导入的json中的项目和集合ID的所有实例后,导入成功。在此发布时,这些更改必须手动完成

更新:

我试着仅仅移除那些有问题的属性,而不是替换它们,结果成功了。我创建了一个简单的脚本来清除这些属性:

Param(
[parameter(Mandatory=$true)]
[alias("p")]
$path
)

$removeProperties = @("triggers","metrics","_links","authoredBy","queue","project")
$json = Get-Content -Path $path -Raw | ConvertFrom-Json

foreach ($property in $removeProperties) {
  $json.PSObject.Properties.Remove($property)
}

$json | ConvertTo-Json -Depth 100 | Set-Content -Path $path -Force

导出的生成定义是否可以保存/修改?你能在这里显示导出的json文件吗?嗨,Marina。我能够保存导入。我必须修改json并转换来自旧集合和项目的所有引用。这是意料之中的事吗?我原以为导入过程会处理这个问题。导入的构建定义的所有配置都与导出的构建定义的配置相同。如果要更改生成存储库或任务等,则需要根据需要手动更改为。