【问题标题】:Building a Public GitHub Repository using Azure DevOps使用 Azure DevOps 构建公共 GitHub 存储库
【发布时间】:2020-02-13 18:55:52
【问题描述】:

如何使用 Azure DevOps 作为构建管道的一部分构建公共 GitHub 存储库?例如,我使用 SonarQube 等开源工具包

看起来我必须分叉存储库并提供对 Azure Pipeline 的存储库访问权限。 Azure DevOps 仅列出我自己的存储库 - 因此是 fork - 由于我对它们具有管理员访问权限 - 我能够提供对 Azure Pipeline 的访问权限。

有没有办法只通过“读取”访问来做到这一点?

【问题讨论】:

  • 您使用的是 YAML 构建还是可视化设计器构建?
  • @DanielMann:这是一个 YAML GitHub (YAML) 管道。这似乎无关紧要,因为您需要与 GitHub 建立服务连接才能创建管道。服务连接(安装令牌或 PAT 两者)只能连接到您自己的存储库。
  • 对于这个具体的例子,我想我只需要一个 git clone。在预感中,我尝试使用“Other Git Repo”,输入公共克隆 URL 以及我的 github 用户名和密码(只有对公共 repo 的读取权限)。然后将文件复制到放置文件夹并发布相同。如果需要从发布管道安装服务器,这将有所帮助。但是,SonarQube 通常只会在构建期间使用。因此,在构建管道中使用命令行任务直接执行“git clone ”并在分析代码之前安装服务器会更简单
  • 如果 GitHub Repository 是公开的,Other Git Repo 选项应该适合你,现在这个问题怎么样?
  • 我尝试使用其他 Git/YAML 选项来构建一个公共存储库 (MarcStan/lets-encrypt-azure),其中存储库根目录中存在 azure-pipelines.yml 文件。保存管道导致此错误:“无法在所选 GitHub 存储库上配置服务。这可能是由于没有必要的权限来管理所选存储库的挂钩。”所以不,@leo-liu-msft 该选项似乎不适用于只读访问。

标签: github azure-devops continuous-integration azure-pipelines


【解决方案1】:

您可以在 Azure DevOps 中创建公共项目或 使用 GitHub 集成 https://github.com/marketplace/azure-pipelines 使用 azure-pipelines 是您的最佳选择。或直接在 azure pipelines 定义中选择 GitHub 或外部 git 存储库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-26
    • 2020-12-08
    • 2021-03-05
    • 2020-11-09
    • 2021-12-14
    • 1970-01-01
    • 2021-03-14
    • 1970-01-01
    相关资源
    最近更新 更多