在Azure DevOps中,我们使用经典方式创建了构建和发布管道,现在我们计划将其转换为yaml文件。

但是在yaml方法中,似乎只能将代码放在存储库的根目录下,在该目录下,我们要将构建yaml文件保存在单独的存储库中,开发人员将无法访问该文件。

如何做到这一点?

最佳答案

您可以使用templates,仅将最小的yalm放在主存储库中,该yaml引用包含所有步骤的模板,该模板在另一个存储库中退出。

例如,您的主要仓库yaml:

resources:
  repositories:
    - repository: templates
      type: git
      name: Contoso/BuildTemplates

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

在仓库中:Contoso / BuildTemplates放入完整的ojit_code:
# Repo: Contoso/BuildTemplates
# File: common.yml
parameters:
  vmImage: 'ubuntu 16.04'

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

限制对第二个存储库的访问(除非代理管道用户)。

阅读here有关资源的更多信息。

关于azure-devops - 如何限制Azure DevOps存储库中的开发人员对build.yml文件的访问,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58689979/

10-14 18:40
查看更多