基于TFS工作项信息触发构建

时间:2017-08-02 19:50:53

标签: azure-devops azure-pipelines azure-pipelines-release-pipeline azure-devops-rest-api

我目前正在寻找在VSTS中实现用例的最佳实践

以下详细信息

1)我们的董事会有几个tfs工作项,这些工作项可以有多个状态 例如:'准​​备好构建','准​​备部署'等

2)根据对工作项的更改,是否可以触发构建?

例如,如果将工作项目移至“准备部署”,那么状态,应该触发部署构建

换句话说,我们如何根据工作项的变化触发构建?

1 个答案:

答案 0 :(得分:1)

当工作项状态发生变化时,您可以使用Web hook来触发构建

先决条件如下:

  • 与工作项状态相关的构建。
  • 您自己的网站,用于接收来自VSTS网络摘要的消息,并发送建立相关版本的请求。
  • 在VSTS中配置Web挂钩。

详细步骤如下:

  1. 创建与工作项状态相关的构建,如Ready to buildReady to deployment等。
  2. 配置服务挂钩:

    在团队项目中 - >服务挂钩 - >创建订阅 - > Web挂钩 - >下一步 - >选择工作项更新作为此类事件的触发器 - >过滤字段为状态 - >下一步 - >输入您网站的网址 - >测试 - >确保它能够成功运作 - >完成。

  3. 使用以下功能开发您自己的网站:

    • 检查更新的工作项的当前状态。您可以通过REST API get a work item获取信息,并检查System.State的值。

    • 触发与队列相关的构建。根据{{​​1}}的值,排队不同的构建。例如,如果System.StateSystem.State,则queue the build为此状态。

  4. 此外,如果您使用的是TFS(Team Foundation Server),则可以在服务器上部署插件。与How to notify users when workItem is changed in Team Foundation Server(TFS) 2015中的方法类似。