【问题标题】:TFS Custom Build Tasks - Multiple versionsTFS 自定义构建任务 - 多个版本
【发布时间】:2017-10-03 00:03:16
【问题描述】:

我需要对自定义 TFS 构建任务进行更改。我想在我的扩展中捆绑新版本的任务(也保留当前版本),并能够在编辑构建/发布定义时选择版本。

我查看了 Microsoft 的 bundling multiple versions of a build task within one extension 文档,但没有看到扩展清单中需要包含的内容的详细信息。

我还查看了VSTS Tasks on github,但我不知道如何实现这一点。

有没有人举例说明如何在一个扩展中捆绑多个版本的任务?

【问题讨论】:

    标签: tfs azure-devops tfsbuild azure-pipelines-build-task


    【解决方案1】:

    这适用于 Visual Studio Team Services,您可能必须等到 TFS 2017u2 发布后才能针对 TFS 执行此操作。

    • 为这两个任务创建一个父文件夹 (Task)
    • 将每个构建任务放在自己的文件夹中(Task\TaskV1、Task\TaskV2)。
    • 确保它们在 task.json 中的主要版本不同
    • 确保它们具有相同的 TaskID 和 TaskName
    • 在 vss-extension.json 中包含两个版本的文件
    • 在 vss-extension.json 中包含任务的单个贡献并仅引用父文件夹 (Task)。

    像这样:

     "contributions": [ 
         { 
             "id": "Task", 
             "type": "ms.vss-distributed-task.task", 
             "targets": [ "ms.vss-distributed-task.tasks" ], 
             "properties": { "name": "Task" } // reference task root folder here.
         },
     ]
    

    另见

    【讨论】:

    • 我也试过这个;上传扩展时,我收到错误 在贡献任务中找不到 task.json 文件。 无论我在文件节点中设置一个指向“任务”父级的条目,还是为每个任务版本。
    • 您使用的是最新版本的 tfx 吗?
    • 我是。我之前应该提到过,我们使用的是最新的 TFS 版本,2017.1(不是 VSTS)
    • 不要指 tfs,我指的是用于打包和发布扩展的 tfx 命令行。另外,我个人还没有在 tfs 上尝试过多版本任务扩展,只在 vsts 上。
    • 您的整个任务文件夹应该有{ "files": [ { "path": "Task" } ] } 一个路径条目。或者可能是{ "files": [ { "path": "Task/TaskV0" }, { "path": "Task/TaskV1" } ] }
    猜你喜欢
    • 2019-01-10
    • 1970-01-01
    • 2016-04-24
    • 2018-05-12
    • 2017-01-15
    • 1970-01-01
    • 2018-12-11
    • 2017-05-08
    • 1970-01-01
    相关资源
    最近更新 更多