Трубопроводы Azure: ошибка при загрузке конвейера сборки YAML: неверное количество сегментов - PullRequest
0 голосов
/ 10 ноября 2018

Я скопировал azure-pipelines.yml из одного проекта в другой, и он не будет собираться. Я убедился, что все одинаково, и с обеих сторон установлены одинаковые расширения ...

Старая сборка все еще работает, но новая не работает:

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

Вот 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)'

1 Ответ

0 голосов
/ 10 ноября 2018

Оказывается, это сообщение об ошибке указывает, что ВЕРСИЯ расширения была неправильной.Я должен назначить сообщение как наименее полезное из когда-либо ...

Задача GitVersion (наконец-то!) Выпустила версию 4 , а в мире конвейера Azure эта , по-видимому, означает, что v3 устарела.Таким образом, новые команды, которые устанавливают это расширение задачи, теперь имеют только v4 (хотя у команды, из которой я скопировал yaml, все еще есть v3).

Решением было изменить первый шаг на:

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