Azure YAML Pipelines:如何在 Azure DevOps 中引用另一个项目中的项目和存储库

Azure YAML Pipelines: How to refer a project and repo in another project in Azure DevOps

我在组织 ABC 中,它有三个 Azure DevOps 项目,即 A、B 和 C。一切都在 Azure Repos 下,这意味着我们没有使用 GitHub。

我正在尝试在项目 C 中检查项目 A 和 B 的存储库。每个项目都有自己的微服务,但共享平台服务将自动执行需要部署到 AKS 中的内容。

问题陈述:当我尝试从项目 C 中的项目 A 和 B 检出 repos 时,出现如下错误。代码段如下:

resources:
  repositories:
    - repository: microservice-a
      type: git
      name: 'InPlaceCommunications/microservice-a'
      ref: master

    - repository: microservice-b
      type: git
      name: 'Project B/microservice-b'
      ref: master

但是,我得到如下错误:

remote: TF401019: The Git repository with name or identifier microservice-a does not exist or you do not have permissions for the operation you are attempting.

非常感谢任何指导。

我确实注意到我有完全的权限自己克隆回购协议,只是在管道上没有发生。

remote: TF401019: The Git repository with name or identifier microservice-a does not exist or you do not have permissions for the operation you are attempting.

根据报错信息,您需要检查以下两点:

  1. 检查选项 Limit job authorization scope to current project for non-release pipelinesProject 中是否 disable C -> 项目设置 -> 设置。您需要禁用此选项。

  1. 检查服务帐户:Project Collection Build Service (OrganizationName) 是否具有 Project A/B 中的读取权限 -> 项目设置 ->存储库 -> 目标存储库 -> 安全.