We are using a Azure yaml pipeline and Gitversion, configured to version up based on PR templates.
- task: gitversion/execute@0
inputs:
useConfigFile: true
configFilePath: 'GitVersion.yml'
- script: echo current version is $(GitVersion.MajorMinorPatch)
displayName: 'Dispaly calculated version'
- task: PowerShell@2
inputs:
targetType: 'inline'
script: 'echo \##vso[build.updatebuildnumber]$(GitVersion.MajorMinorPatch)'
How do i set a condition to run only on main branch. I have a same setup of pipelines configured in feature branch for different testing. So when Gitversion should execute only when main branch is being used.
Gitversion.yaml:
mode: Mainline
branches:
feature:
regex: ^feature?[/-]
tag: feat-{BranchName}
source-branches: ['main','master']
fix:
regex: bugfix(es)?[/-]
tag: bugfix-{BranchName}
source-branches: ['main','master']
ignore:
sha: []
merge-message-formats: {}
This condition helps me to acheive my requriement
and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/main'))