TFS 构建任务:带有链接工件值的自定义填充选择列表

TFS Build Task: Custom populated pick list with linked artifact values

我目前正在创建一个新的发布任务,因此我可以使用发布管理来编排我的发布。目前我们正在使用外部工具来部署我们的应用程序。幸运的是,这个应用程序提供了一个 REST API.

我们要部署的应用程序由不同的部分(子应用程序)组成。但是在发布管理中,我们希望在一个发布定义中部署不同的部分(目前)。

每个子应用程序都可以映射到一个构建,该构建是发布定义中的链接工件。在我当前正在创建的任务中,我想要一个选择列表,其中显示必须部署的链接工件。我会很高兴有这些信息。因此,我可以将必须​​部署的构建名称传递给底层 PowerShell 脚本。使用此信息,我可以检索必须通过以下站点中描述的方法部署的内部版本号:https://www.visualstudio.com/en-us/docs/release/author-release-definition/understanding-artifacts#artifact-variables。有了这些信息,我可以创建一个 REST 请求来开始发布。

我检查了 VSTS tasks repo on Github 但找不到任何类似的东西。我想知道是否有人知道这是否可能?如果不是,还有哪些选择?或者有人知道他们做过类似事情的扩展吗?

提前致谢。

我正在为 TFS2015U3 或 TFS15RC1 开发此插件。

不,没有任何方法可以获取链接的工件,然后直接在发布任务中使用它们填充选择列表,因为在发布开始之前,任务无法知道将部署哪个构建。

另一种方法是添加一个输入框并在任务中手动输入内部版本号。

更新:

如果你想用链接的工件别名填充 pickList,你可以创建一个 custom service endpoint 以首先通过 Rest Call 获取链接的工件,然后在构建任务中将数据源绑定到 pickList。 这是 Rest API URL 以获取包含链接工件信息的发布定义:Get a release definition.