【发布时间】:2017-06-16 18:14:30
【问题描述】:
在 TFS 2017 Update 1 中,使用 REST api 以编程方式下载发布定义后,我编辑了下载的 json 并以编程方式再次上传。
变化是存在的。但是,更改后的环境中缺少手动干预的服务器阶段。
其他人可以复制吗?
下载和上传release定义的程序C#在我的github页面githubpage
【问题讨论】:
-
您如何判断人工干预是否缺失?您只是没有找到相关任务还是该任务不再工作?你可以试试这个教程--use manual Intervention (Task).
-
@Patrick-MSFT:发布定义有人工干预阶段。但是在以编程方式更新之后,该阶段就丢失了。更新后,我可以看到该阶段已被删除。同样在历史记录中,这些步骤也被删除了。
-
不仅服务器阶段丢失,而且在第一个服务器阶段之后定义的任何进一步的代理/服务器阶段。
-
你的意思是如果你现在创建一个新的发布定义,服务器阶段也会丢失吗?旧的另一个版本定义(无需您更新)怎么样?
-
让我再解释一下。我已经手动创建了一个发布定义。我在其中定义了 5 个环境 - Dev、Test、UAT、Prod、Stable。在每个环境中,我都有一个包含少量任务的代理阶段,然后是一个人工干预的服务器阶段,然后是一个包含更多任务的代理阶段。我有一个 C# 程序,它将发布定义下载为 json。我在 json 中添加了一些变量,并使用 C# 程序将 json 上传回来。以这种方式更新后,我添加的新变量出现了。但是服务器阶段和它下面的代理阶段完全丢失了。
标签: tfs release-management ms-release-management