如何在发布定义管道中 create/update 环境?

How to create/update environment in release definition pipeline?

我正在尝试使用一组特定的预定义任务和步骤动态创建环境。 任何人都能很好地工作以 post 一些示例代码或指南?

我无法向现有环境或任务添加环境或任务。我一直收到错误 BadRequest,但我不知道我在 JSON 有效负载中做错了什么。

我可以获得现有的定义,我可以做一些简单的事情,比如在更新时更新发布定义的名称、注释和描述,但是一旦我接触到环境,它就会全部崩溃。

我正在使用在线 URI - https://vsrm.dev.azure.com/{acct}/{proj}/_apis/release/definitions?api-version=5.1

有什么方法可以获取有关我的有效载荷有什么问题、最低限度或必需的更多信息吗?

如果您指的是create/update特定发布定义的环境,那么您可以尝试以下步骤:

  1. 获取发布定义响应并将响应转换为 JSON 正文: GET https://vsrm.dev.azure.com/{organization}/{Project}/_apis/release/definitions/{definition ID}?api-version=5.1
  2. 向 JSON 主体添加(插入)新环境(或更新现有环境)。您可以从现有环境块复制,然后相应地更改参数。例如:Add a new environment with "id":0, set a new name, the ranks of release pipeline stages need to be consecutive natural numbers, for example, the rank in previous stage is "2", then it should be "3" here. Keep others same as previous one
  3. 通过使用更新后的 JSON 主体调用 REST API 来更新发布定义: PUT https://vsrm.dev.azure.com/{organization}/{Project}/_apis/release/definitions?api-version=5.1

详情可参考以下截图: