web-dev-qa-db-fra.com

Azure Pipelines: une erreur s'est produite lors du chargement du pipeline de génération YAML: nombre incorrect de segments

J'ai copié un Azure-pipelines.yml d'un projet à un autre, et il ne sera pas construit. Je me suis assuré que tout est le même, et les mêmes extensions sont installées des deux côtés ...

L'ancienne version fonctionne toujours, mais la nouvelle ne:

An error occurred while loading the YAML build pipeline. wrong number of segments

Voici le YAML:

# https://aka.ms/yaml
name: $(Build.DefinitionName)_$(GitVersion_InformationalVersion)
pr:
- master
pool:
  vmImage: 'VS2017-Win2016'    

steps:
- task: gittools.gitversion.gitversion-task.GitVersion@3
  displayName: GitVersion

- powershell: .\bootstrap.ps1
  displayName: 'Restore pre-requisites'

- powershell: .\build.ps1 -OutputDirectory $(Build.ArtifactStagingDirectory)\$(Build.DefinitionName) -SemVer $(GitVersion.InformationalVersion) -Verbose
  displayName: 'Run build script'

- task: richardfennellBM.BM-VSTS-PesterRunner-Task.Pester-Task.Pester@8
  displayName: 'Pester Tests'
  inputs:
    additionalModulePath: '$(Build.ArtifactStagingDirectory)'
    CodeCoverageFolder: '$(Build.ArtifactStagingDirectory)'
    resultsFile: '$(Common.TestResultsDirectory)\Test-$(Build.DefinitionName)_$(Build.BuildNumber).xml'
    CodeCoverageOutputFile: '$(Common.TestResultsDirectory)\Coverage-$(Build.DefinitionName)_$(Build.BuildNumber).xml'

- task: PublishTestResults@2
  displayName: 'Publish Test Results'
  condition: always()
  inputs:
    testRunner: NUnit
    searchFolder: '$(Common.TestResultsDirectory)'

- task: PublishCodeCoverageResults@1
  displayName: 'Publish code coverage'
  inputs:
    summaryFileLocation: '$(Common.TestResultsDirectory)\Coverage-$(Build.DefinitionName)_$(Build.BuildNumber).xml'

- task: PublishBuildArtifacts@1
  displayName: 'Publish Artifact: Module'
  inputs:
    ArtifactName: Module
    PathtoPublish: '$(Build.ArtifactStagingDirectory)'
12
Jaykul

Il s'avère que ce message d'erreur indique que la VERSION de l'extension était incorrecte. Je dois nommer le message pour le moins utile jamais ...

La tâche GitVersion a (enfin!) Publié la version 4 et dans le monde Azure Pipeline, cela apparemment signifie que la v3 est obsolète. Ainsi, les nouvelles équipes qui installent cette extension de tâche ne disposent désormais que de la v4 (bien que l'équipe d'où j'ai copié le yaml ait toujours la v3).

La solution était de changer la première étape pour:

steps:
- task: gittools.gitversion.gitversion-task.GitVersion@4
  displayName: GitVersion
17
Jaykul