无法更新 Azure Devops (VSTS) 扩展

Cannot update Azure Devops (VSTS) extension

在 Visual Studio 市场 (https://marketplace.visualstudio.com) 中,我找到了一个扩展(版本 1),我现在在我的 Azure Devops 构建管道 中使用它。联系了作者,做了一点小改进,昨天就推送了新版本的插件。在 VS MarketPlace 中,我还看到 v2 已经可用。但是,当我进入构建管道时,我仍然只能 select 版本 1。

我已联系我所在组织的管理员以确保安装了最新版本。我们甚至尝试删除组织的扩展(此时已反映在我的构建定义中)并重新安装它,但我仍然只能 select 版本 1。

为什么我无法访问最新版本的扩展有什么想法吗?

扩展是否捆绑了多个版本的任务?通常,我们在您的扩展中包含一个任务版本。现在也可以在一个扩展中包含多个版本,如果您想在不中断用户 运行 旧版本服务的情况下推出扩展的未来版本,这将很有帮助。你可以看到multiple version layout。您只能 select 版本 1,这意味着扩展只包含一个版本任务,即使您更新了任务架构中的版本号。换句话说,你可以select的版本不是任务本身的版本,它意味着在这个扩展中包含了多少不同版本的任务。

请参阅以下示例扩展清单,其中包含多个版本任务。

{
    "manifestVersion": 1,
    "id": "build-release-extension-task",
    "name": "Build and Release Extension Tools",
    "version": "0.1.0",
    "publisher": "{your publisher id}",
    "targets": [
        {
            "id": "Microsoft.VisualStudio.Services"
        }
    ],    
    "description": "Tools for building/releasing with Fabrikam. Includes one build/release task.",
    "categories": [
        "Azure Pipelines"
    ],
    "icons": {
        "default": "images/ic_extension.png"        
    },
    "files": [
        {
            "path": "buildAndReleaseExtensionTaskV1"
        },
        {
    "path": "buildAndReleaseExtensionTaskV2"
        }       
    ],
    "contributions": [
        {
            "id": "custom-build-release-task-v1",
            "type": "ms.vss-distributed-task.task",
            "targets": [
                "ms.vss-distributed-task.tasks"
            ],
            "properties": {
                "name": "buildAndReleaseExtensionTaskV1"
            }
        },
        {
            "id": "custom-build-release-task-v2",
            "type": "ms.vss-distributed-task.task",
            "targets": [
                "ms.vss-distributed-task.tasks"
            ],
            "properties": {
                "name": "buildAndReleaseExtensionTaskV2"
            }
        }       
    ]
}

就我而言,问题不是更新 task.json 文件中的任务版本。更新扩展的版本(在清单文件中)是不够的。如果任务版本未更改,Azure DevOps 将不会更新任务本身(尽管在“扩展”页面上正确更新了扩展)。