Сообщение о проблеме с триггером конвейера Azure DevOps не исчезает

Наша команда реализует конвейер тестирования Azure DevOps. Это сообщение об ошибке было отображено после нашей первоначальной фиксации для создания файла .yml конвейера. Изучив его, я понял, что забыл включить триггер в .yml. Однако после добавления это сообщение об ошибке не исчезло. Хотя конвейер работает должным образом, мы просто используем ручной триггер, как показано ниже. Единственная указанная проблема связана с нашим исходным коммитом. Есть ли способ подтвердить эту ошибку, чтобы она исчезла, или я могу пропустить другую ошибку, которую я еще не заметил? Заранее благодарим за любую помощь. Пожалуйста, дайте мне знать, если я могу предоставить дополнительную информацию.

Вот сообщения об ошибках, которые я вижу, когда просматриваю запуски этого конвейера. Я также добавил снимок экрана, показывающий, как я настраиваю спусковой крючок. введите описание изображения здесь

введите описание изображения здесь

Изменить: В качестве запроса я включил ниже фактический код файла .yml с небольшими изменениями названия. У нас есть некоторые настраиваемые плагины, такие как создание файлов для файлов, которые не отслеживаются, но которые все еще необходимо создать. Поэтому вам может потребоваться удалить их, чтобы проверить это.

trigger:
- none

pool:
  name: myPool
  demands:
  - msbuild
  - visualstudio

steps:

- task: NuGetToolInstaller@0
  displayName: 'Use NuGet 4.4.1'
  inputs:
    versionSpec: 4.4.1

- task: NuGetCommand@2
  displayName: 'NuGet restore'
  inputs:
    restoreSolution: '$(Parameters.solution)'

- task: eliostruyf.build-task.custom-build-task.file-creator@6
  displayName: 'Create Connection Strings file'
  inputs:
    filepath: '$(System.DefaultWorkingDirectory)/ID_Web/config/ConnectionStrings.config'
    filecontent: |
     <connectionStrings>
     
     </connectionStrings>
     
    endWithNewLine: true

- task: eliostruyf.build-task.custom-build-task.file-creator@6
  displayName: 'Create Developer Settings File'
  inputs:
    filepath: '$(System.DefaultWorkingDirectory)/ID_Web/config/developerAppSettings.config'
    filecontent: |
     <appSettings>

     </appSettings>
    endWithNewLine: true


- task: eliostruyf.build-task.custom-build-task.file-creator@6
  condition: contains(variables['Agent.Name'], '1')
  displayName: 'Create Developer Integration Setting for agent 1'
  inputs:
    filepath: '$(System.DefaultWorkingDirectory)/ID_Test/config/developerIntegrationSettings.config'
    filecontent: |
     <developerIntegrationSettings>
        <add key="ModelsIntegrationTestDb" value="Models_IntegrationTest_BuildAgent1"/>
        <add key="ErrorsIntegrationTestDb" value="Errors_IntegrationTest_BuildAgent1"/>
     </developerIntegrationSettings>
     
    endWithNewLine: true


- task: VisualStudioTestPlatformInstaller@1
  displayName: 'Visual Studio Test Platform Installer'
  inputs:
    versionSelector: latestStable

# Build the solution.
- task: VSBuild@1
  displayName: 'Build solution'
  inputs:
    solution: '$(Parameters.solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\"'
    platform: '$(BuildPlatform)'
    configuration: '$(BuildConfiguration)'
    clean: true

# Run all unit tests in parallel
- task: VSTest@2
  displayName: 'Run Unit Tests'
  inputs:
    testAssemblyVer2: |
     **\*ID_Test*.dll
     !**\*TestAdapter.dll
     !**\obj\**
    searchFolder: '$(System.DefaultWorkingDirectory)/ID_Test'
    testFiltercriteria: '(FullyQualifiedName!~Integration & FullyQualifiedName!~Ioc)'
    runOnlyImpactedTests: false
    vsTestVersion: toolsInstaller
    runSettingsFile: 'ID_Test/.runsettings'
    runInParallel: true
    runTestsInIsolation: false
    codeCoverageEnabled: false
    testRunTitle: 'Unit Tests'
    platform: '$(BuildPlatform)'
    configuration: '$(BuildConfiguration)'
    diagnosticsEnabled: true
    rerunFailedTests: true

# Run integration tests serially
- task: VSTest@2
  displayName: 'Run Integration Tests'
  inputs:
    testAssemblyVer2: |
     **\*ID_Test*.dll
     !**\*TestAdapter.dll
     !**\obj\**
    searchFolder: '$(System.DefaultWorkingDirectory)/ID_Test'
    testFiltercriteria: '(FullyQualifiedName~Integration | FullyQualifiedName~Ioc)'
    runOnlyImpactedTests: false
    vsTestVersion: toolsInstaller
    runSettingsFile: 'ID_Test/.runsettings'
    runTestsInIsolation: true
    codeCoverageEnabled: false
    testRunTitle: 'Integration Tests'
    platform: '$(BuildPlatform)'
    configuration: '$(BuildConfiguration)'
    diagnosticsEnabled: true
    rerunFailedTests: true

# Clean agent directories
- task: mspremier.PostBuildCleanup.PostBuildCleanup-task.PostBuildCleanup@3
  displayName: 'Clean Agent Directories'

Изменить (2): Ниже приведен снимок экрана того, что я сейчас использую для настроек триггера, изначально он не был отмечен. Однако проверка, похоже, не оказывает никакого влияния. введите описание изображения здесь


person Andrew    schedule 11.11.2020    source источник
comment
Не могли бы вы поделиться своим полным YAML в своем вопросе с кодом вместо изображения, чтобы мы могли протестировать его на моей стороне. Кстати, поделитесь изображением о настройках триггеров.   -  person Leo Liu-MSFT    schedule 13.11.2020
comment
Добавил и то, и другое. Пожалуйста, дайте мне знать, если я могу предоставить дополнительную информацию.   -  person Andrew    schedule 13.11.2020


Ответы (2)


Поэтому мы отказались от этой проблемы, поскольку она не имела никакого эффекта, и мы не смогли найти проблему. Примерно через неделю или две он просто перестал появляться. Так что я предполагаю, что это была просто причуда Azure DevOps, а не проблема с самим конвейером.

person Andrew    schedule 07.12.2020

Судя по вашему описанию, эта проблема больше похожа на эпизодическую. В файлах YAML включать триггеры не обязательно. Конвейеры YAML по умолчанию настроены с триггером CI на всех ветвях. Вы можете создать новый конвейер и скопировать свой YAML-файл, чтобы увидеть, есть ли еще какие-либо сообщения об ошибках.

Или проблема может возникнуть из-за триггеров классического пользовательского интерфейса. На странице редактирования конвейера выберите Дополнительные действия - ›Триггеры.

введите описание изображения здесь

Затем вы можете проверить, нет ли чего-нибудь незаконного. Если вы хотите использовать триггер в файле YAML, не снимайте флажок «Переопределить триггер непрерывной интеграции YAML отсюда».

person Jane Ma-MSFT    schedule 12.11.2020
comment
Спасибо за ответ. Я попытался создать новый конвейер с тем же файлом YAML, но появилось то же сообщение об ошибке, так что это может быть проблема с чем-то еще в моем YAML. Но замена его кодом YAML из другого конвейера, в котором нет этой ошибки, все равно не удалила его. Я возился с триггерами пользовательского интерфейса, но, к сожалению, это не повлияло на них. - person Andrew; 12.11.2020