6
votes

I have a project on Azure DevOps containing multiple forks of the same main repository. I created a build pipeline for that repository which unfortunately cannot be reused for the present forks since a pipeline can only be configured for a single repository.

This solution is not ideal because leads to multiple identical pipelines, one for each fork, and maintaining all of them can be difficult.

Is there a way to use one pipeline for multiple repositories?

2

2 Answers

8
votes

you can create a template file and reference that file from each pipeline, that way you can edit a single file and every pipeline will change.

example how to reuse a step file from different repo

resources:
  repositories:
  - repository: DevOps
    type: git
    name: DevOps
trigger: none

jobs:
- template: vsts/yaml/build.yaml@DevOps
  parameters:
    solutionName: xxx
    registryName: yyy

You can take a look at the official docs for more examples

https://docs.microsoft.com/en-us/azure/devops/pipelines/process/templates?view=azure-devops

3
votes

It's on the roadmap for 2019 Q3:

Multi-repository support for YAML pipelines https://dev.azure.com/mseng/AzureDevOpsRoadmap/_workitems/edit/1454026