Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Configuring the trigger failed, edit and save the pipeline again" with no noticeable error and no further details

I have run in to an odd problem after converting a bunch of my YAML pipelines to use templates for holding job logic as well as for defining my pipeline variables. The pipelines run perfectly fine, however I get a "Some recent issues detected related to pipeline trigger." warning at the top of the pipeline summary page and viewing details only states: "Configuring the trigger failed, edit and save the pipeline again."

The odd part here is that the pipeline works completely fine, including triggers. Nothing is broken and no further details are given about the supposed issue. I currently have YAML triggers overridden for the pipeline, but I did also define the same trigger in the YAML to see if that would help (it did not).

I'm looking for any ideas on what might be causing this or how I might be able to further troubleshoot it given the complete lack of detail that the error/warning provides. It's causing a lot of confusion among developers who think there might be a problem with their builds as a result of the warning.

Here is the main pipeline. the build repository is a shared repository for holding code that is used across multiple repos in the build system. dev.yaml contains dev environment specific variable values. Shared holds conditionally set variables based on the branch the pipeline is running on.

name: ProductName_$(BranchNameLower)_dev_$(MajorVersion)_$(MinorVersion)_$(BuildVersion)_$(Build.BuildId)
resources:
  repositories:
    - repository: self
    - repository: build
      type: git
      name: Build
      ref: master

# This trigger isn't used yet, but we want it defined for later.
trigger: 
  batch: true
  branches:
    include: 
    - 'dev'

variables:
- template: YAML/variables/shared.yaml@build
- template: YAML/variables/dev.yaml@build

jobs:
- template: ProductNameDevJob.yaml
  parameters:
    pipelinePool: ${{ variables.PipelinePool }}
    validRef: ${{ variables.ValidRef }}

Then this is the start of the actual job yaml. It provides a reusable definition of the job that can be used in more than one over-arching pipeline:

parameters:
- name: dependsOn
  type: object
  default: {}
- name: pipelinePool
  default: ''
- name: validRef
  default: ''
- name: noCI
  type: boolean
  default: false
- name: updateBeforeRun
  type: boolean
  default: false

jobs:
- job: Build_ProductName
  displayName: 'Build ProductName'
  pool:
    name: ${{ parameters.pipelinePool }}
    demands: 
    - msbuild
    - visualstudio
  dependsOn: 
  - ${{ each dependsOnThis in parameters.dependsOn }}:
    - ${{ dependsOnThis }}
  condition: and(succeeded(), eq(variables['Build.SourceBranch'], variables['ValidRef']))

  steps:
**step logic here

Finally, we have the variable YAML which conditionally sets pipeline variables based on what we are building:

variables:
- ${{ if or(eq(variables['Build.SourceBranch'], 'refs/heads/dev'), eq(variables['Build.SourceBranch'], 'refs/heads/users/ahenderson/azure_devops_build')) }}:
  - name: BranchName
    value: Dev
** Continue with rest of pipeline variables and settings of each value for each different context.
like image 992
AJ Henderson Avatar asked Oct 15 '22 20:10

AJ Henderson


1 Answers

You can check my post here : Azure DevOps pipeline trigger issue message not going away

As I can see in your YAML file, you are using this branch : 'refs/heads/users/ahenderson/azure_devops_build'.

I think some YAML files you are refering are missing from the branch defined as default in your build there : enter image description here

Switch to your branch

like image 135
Christophe P Avatar answered Oct 18 '22 07:10

Christophe P