首页 > 解决方案 > 如何通过 VS Code 在 Azure DevOps YAML 文件中添加和验证自定义构建任务

问题描述

我有包含构建任务的 Azure DevOps 自定义扩展。我正在尝试在我的代码库中配置/编辑 YAML 文件,并通过 VS Code 将我的自定义构建任务添加到其中。我正在使用 Microsoft VS Code 扩展 docs-yaml 扩展来验证我的 YAML 文件。

正如您在下图中看到的,Microsoft Build 模板中提供的所有构建任务都已成功验证,没有任何问题。但它无法验证我的构建任务 sampletask@3。据我了解,YAML 文件正在针对称为管道模式的文件进行验证。我在以下位置找到了这个架构文件 https://raw.githubusercontent.com/microsoft/azure-pipelines-vscode/v1.174.2/service-schema.json

  1. 如何/是否可以将我的构建任务详细信息添加到管道架构文件中?
  2. 如果以上是不可能的,有什么方法可以在 VS Code 中成功验证我的构建任务?

请参考下图。 无法验证我的任务

参考 :

标签: visual-studio-codeazure-devopsyamlschemaazure-pipelines-build-task

解决方案


如何通过 VS Code 在 Azure DevOps YAML 文件中添加和验证自定义构建任务

我无法使用扩展程序重现此问题docs-yaml

然后我测试了另一个常用的扩展Azure Pipelines,我可以像你一样重现这个问题。所以我大胆假设这个验证应该来自扩展的 Azure Pipelines。您可以检查是否已在 Visual Studio 代码中安装了此扩展。

安装该扩展并重新启动 VS Code 后,我可以看到验证信息:

在此处输入图像描述

为了解决这个问题,我们可以继续阅读 Azure Pipelines for VS Code文档:</p>

开箱即用的扩展具有一个通用架构文件,其中仅包含内置任务。您可能在组织中安装了自定义任务。要教扩展程序关于这些,请获取您的模式的副本并告诉扩展程序在哪里可以找到它。

  1. 访问 https://dev.azure.com/YOU-ORG-HERE/_apis/distributedtask/yamlschema 并将输出保存为my-schema.json.
  2. 编辑工作区的 settings.json 以包含以下内容:{
    "[azure-pipelines].customSchemaFile": "./path/to/my-schema.json"}
  3. 重新启动 VS 代码。该扩展现在将根据您的架构进行验证。它会为您的自定义任务提供自动完成功能。

第二步详细步骤:

单击 VS 代码左下角的齿轮按钮Manage-> Settings,然后单击 Workspace->Extensions->Azure 管道:

在此处输入图像描述

在此处输入图像描述

我将文件保存yamlschema.json在该文件夹中settings.json

重新启动 VS Code 后,我可以在 VS Code 中成功验证该构建任务:

在此处输入图像描述


推荐阅读