为什么缺少TFS构建步骤扩展图标?

时间:2017-02-05 09:40:34

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

我在MS教程后为TFS创建了一个新的扩展。出于某种原因,当我向我的扩展程序添加Icon时,我可以在安装扩展程序时在" Extension Manager"中找到此图标。页面,

但是当我从构建步骤菜单中选择我的扩展时,图像缺失

在" vss-extension.json"文件我添加:

"icons": {
    "default": "images/icon.png"
}, 
"files": [
    {
        "path": "images",
        "addressable": true          
    },
    {
        "path": "dist",
        "addressable": true,
        "packagePath": "scripts"
    },
    {
        "path": "infoTab.html",
        "addressable": true
    },                   
    {
        "path": "node_modules/vss-web-extension-sdk/lib",
        "addressable": true,
        "packagePath": "lib"
    },    
    {
        "path": "buildtask"
    }       
],

图像文件是32x32

此图像是否应在" task.json"中引用?文件也是?

2 个答案:

答案 0 :(得分:13)

Microsoft Visual Studio Team Foundation Server 版本15.105.25910.0的不正确。也许这对以前的版本来说是正确的。

  1. 图片文件必须命名为 icon.png
  2. 图片文件必须task.json位于同一文件夹中。
  3. 图片文件 32 x 32 ;没有应用图像缩放。
  4. task.json文件不包含对此文件的任何引用。它通过使用这些约定来定位。

答案 1 :(得分:6)

任务本身有自己的图标,必须存储在与task.json相同的目录中,并且必须调用task.png并且为32x32像素,并且可选择另外task.svg把它放在一边。这与一个扩展可以包含多个构建任务的事实有关,每个构建任务都有自己的图标。它没有从task.json中引用,正确的文件名将导致它被拾取。

例如,检查我的VSTS Snyk task。此外,如果这是您的完整扩展清单,那么它缺少Build任务贡献点:

"contributions": [
{
  "id": "buildtask",
  "type": "ms.vss-distributed-task.task",
  "targets": [
    "ms.vss-distributed-task.tasks"
  ],
  "properties": {
    "name": "buildtask"
  }
}