Azure DevOps YAML 管道错误:解析块映射时未找到预期的密钥
Posted
技术标签:
【中文标题】Azure DevOps YAML 管道错误:解析块映射时未找到预期的密钥【英文标题】:Azure DevOps YAML Pipeline Error: While parsing a block mapping did not find expected key 【发布时间】:2022-01-12 10:36:28 【问题描述】:我刚刚使用 YAML 文件创建了一个管道,但我总是收到错误“/_Azure-Pipelines/templates/webpart.yml: (Line: 41, Col: 27, Idx: 1058) - (Line: 41, Col: 60, Idx: 1091): 解析块映射时,没有找到预期的键。”。我已经验证了我的 YAML 文件的缩进,看起来不错。
下面是我的 YAML 文件。
parameters:
- name: azureSubscription
type: string
- name: cdnStorageAccount
type: string
- name: cdnResourceGroupName
type: string
- name: cdnEndpointName
type: string
- name: cdnProfileName
type: string
- name: sourceBranchTrigger
type: string
stages:
- stage: build_stage
displayName: "Build"
jobs:
- job: build_job
steps:
- task: UseNode@1
displayName: "Use Node 8.x"
inputs:
version: "8.x"
- task: CmdLine@2
displayName: "Build"
inputs:
script: |
cd ./Webparts
npm run build-server
- task: PublishBuildArtifacts@1
displayName: "Publish Build Artifact (Apps)"
condition: ne(variables['Build.Reason'], 'PullRequest')
inputs:
PathtoPublish: "Webparts/sharepoint/solution/webpart.sppkg
ArtifactName: Apps
- task: PublishBuildArtifacts@1
displayName: "Publish Build Artifact (Scripts)"
condition: ne(variables['Build.Reason'], 'PullRequest')
inputs:
PathtoPublish: "Webparts/temp/deploy"
ArtifactName: Scripts
【问题讨论】:
【参考方案1】:这是由于PathtoPublish
的任务PublishBuildArtifacts@1
中缺少引号。我通过使用RedHat
提供的YAML
扩展发现了这个错误。
启用该扩展并设置 YAML 格式后(SHIFT + ALT + F),它应该会显示 YAML 文件中的错误。
【讨论】:
这是一个非常有用的扩展,我们团队中的每个人都在使用它以上是关于Azure DevOps YAML 管道错误:解析块映射时未找到预期的密钥的主要内容,如果未能解决你的问题,请参考以下文章
是否有在本地验证 Azure DevOps Pipeline 的工具?
用于在 azure devops.Apache maven 上创建基于 java 的 Web 应用程序的管道以创建 build 。下面的yaml代码和我得到的输出错误