可以使用其他存储库 yml 文件到其他管道

时间:2021-01-14 12:54:45

标签: azure-devops azure-pipelines azure-pipelines-yaml azure-repos azure-devops-pipelines

Repo 1 和分支名称:Repo1Branch

trigger:
- none

pool:
  vmImage: 'ubuntu-latest'

steps:
- script: echo Hello, world!

我想调用 Repo 1 表单 Repo 2 管道

Repo 2 和分支名称:Repo2Branch

trigger:
- none

pool:
  vmImage: 'ubuntu-latest'

resources:
  repositories:
    - repository: templates
      type: git
      name: PROJECTNAME/Repo 1
      ref: Repo1Branch 
  
steps:
 - template: azure-pipelines.yml@Repo 1

1 个答案:

答案 0 :(得分:0)

是的,你可以在这里提到 - Use other repositories

在一个 repo 中定义模板

# Repo: Contoso/BuildTemplates
# File: common.yml
parameters:
- name: 'vmImage'
  default: 'ubuntu 16.04'
  type: string

jobs:
- job: Build
  pool:
    vmImage: ${{ parameters.vmImage }}
  steps:
  - script: npm install
  - script: npm test

然后你引用它

# Repo: Contoso/LinuxProduct
# File: azure-pipelines.yml
resources:
  repositories:
    - repository: templates
      type: github
      name: Contoso/BuildTemplates

jobs:
- template: common.yml@templates  # Template reference

但这必须是模板。不完整的管道。您不能像上面那样引用完整的管道作为模板。例如,模板中不允许使用 triggerpool 关键字。