GitHub 连接 - AWS CodePipeline

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

GitHub 连接

您可以使用连接来授权和建立将您的第三方提供商与您的 AWS 资源关联的配置。

注意

此功能不适用于亚太地区(香港)、亚太地区(海得拉巴)、亚太地区(雅加达)、亚太地区(墨尔本)、亚太地区(墨尔本)、亚太地区(大阪)、非洲(开普敦)、中东(巴林)、中东(阿联酋)、欧洲(西班牙)、欧洲(苏黎世)、以色列(特拉维夫)或 AWS GovCloud (美国西部)地区。要参考其他可用操作,请参阅 产品和服务与 CodePipeline。有关在欧洲地区(米兰)区域使用此操作的注意事项,请参阅CodeStarSourceConnection 适用于 Bitbucket Cloud GitHub、、 GitHub 企业服务器、 GitLab .com 和 GitLab 自我管理操作中的说明。

要在中为您的企业云存储库 GitHub 或 GitHub 企业云存储库添加源操作 CodePipeline,您可以选择:

注意

您也可以使用开发人员工具控制台,在设置下创建连接。参阅创建连接

开始前的准备工作:

  • 您必须已使用创建账户 GitHub。

  • 您必须已经创建了 GitHub 代码存储库。

  • 如果您的 CodePipeline 服务角色是在 2019 年 12 月 18 日之前创建的,则可能需要更新其权限才能codestar-connections:UseConnection用于 AWS CodeStar 连接。有关说明,请参阅向 CodePipeline 服务角色添加权限

注意

要创建连接,您必须是 GitHub 组织所有者。对于不属于组织的存储库,您必须是存储库拥有者。

创建与 GitHub(控制台)的连接

使用这些步骤使用 CodePipeline 控制台为您的 GitHub或 GitHub 企业云存储库添加连接操作。

注意

在这些步骤中,您可以在存储库访问下选择特定的存储库。任何未被选中的存储库都将无法访问或看见 CodePipeline。

步骤 1:创建或编辑您的管道

  1. 登录 CodePipeline 控制台。

  2. 选择以下选项之一。

    • 选择创建管道。按照创建管道 中的步骤操作,完成第一个屏幕,然后选择下一步。在 “来源” 页面的 “源提供程序” 下,选择 GitHub (版本 2)

    • 选择编辑现有管道。选择编辑,然后选择编辑阶段。选择添加或编辑您的源操作。在编辑操作页面的操作名称下,输入您的操作的名称。在操作提供者中,选择 GitHub (版本 2)

  3. 请执行以下操作之一:

    • 在 “连接” 下,如果您尚未创建与提供商的连接,请选择 “连接到” GitHub。继续执行步骤 2:创建与的连接 GitHub。

    • 连接下,如果您已创建到提供程序的连接,请选择该连接。继续执行步骤 3:保存连接的源操作。

步骤 2:创建与的连接 GitHub

选择创建连接后,将出现 “Connect t GitHub o” 页面。

显示初始 GitHub 连接页面的控制台屏幕截图。
要创建与的连接 GitHub
  1. “GitHub 连接设置” 下,您的连接名称显示在 “连接名称” 中。选择 “连接到” GitHub。此时将显示访问请求页面。

  2. 选择 “为 AWS 连接器授权” GitHub。连接页面将显示并显示 “GitHub 应用程序” 字段。

    控制台屏幕截图显示了带有 GitHub 应用程序字段的初始 GitHub 连接页面。
  3. 在 “GitHub 应用程序” 下,选择应用程序安装或选择 “安装新应用程序” 来创建一个。

    注意

    您可以为与特定提供程序的所有连接安装一个应用程序。如果您已经安装了 GitHub应用程序 AWS 连接器,请选择它并跳过此步骤。

  4. 在 “安装 AWS 连接器 GitHub” 页面上,选择要安装应用程序的帐户。

    注意

    您只需为每个 GitHub 帐户安装一次应用程序。如果您之前已安装了应用程序,则可以选择配置,继续进入应用程序安装的修改页面,也可以使用后退按钮返回到控制台。

  5. 在 “安装 AWS 连接器 GitHub” 页面上,保留默认值,然后选择 “安装”。

  6. 在 “Connect t o GitHub” 页面上,新安装的连接 ID 显示在 “GitHub 应用程序” 中。选择连接

第 3 步:保存 GitHub 源操作

使用编辑操作页面上的这些步骤,将源操作与连接信息一起保存。

保存 GitHub 源操作
  1. 存储库名称中,选择第三方存储库的名称。

  2. 如果您的操作是操作,则可以在 Pip elin e 触发器下添加触发器。 CodeConnections 要配置管道触发器配置并选择使用触发器进行筛选,请在中查看更多详细信息筛选代码推送或拉取请求的触发器

  3. 输出构件格式中,您必须为构件选择格式。

  4. 在向导上选择下一步,或者在编辑操作页面上选择保存

创建与 GitHub (CLI) 的连接

您可以使用 AWS Command Line Interface (AWS CLI) 来创建连接。

为此,请使用 create-connection 命令。

重要

默认情况下,通过 AWS CLI 或创建的连接 AWS CloudFormation 处于PENDING状态。使用 CLI 或创建连接后 AWS CloudFormation,使用控制台编辑连接以使其处于状态AVAILABLE

创建连接
  1. 打开终端(Linux、macOS 或 Unix)或命令提示符(Windows)。 AWS CLI 使用运行create-connection命令,--connection-name为您的连接指定--provider-type和。在此示例中,第三方提供方名称为 GitHub,指定的连接名称为 MyConnection

    aws codestar-connections create-connection --provider-type GitHub --connection-name MyConnection

    如果成功,该命令将返回类似以下内容的连接 ARN 信息。

    { "ConnectionArn": "arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f" }
  2. 使用控制台完成连接。有关更多信息,请参阅更新挂起的连接

  3. 管道默认会在向连接源存储库推送代码时检测更改。要配置手动发布或 Git 标签管道触发器配置,请执行以下操作之一:

    • 要将管道触发器配置为仅通过手动发布启动,请在配置中添加以下行:

      "DetectChanges": "false",
    • 要将管道触发器配置配置配置为使用触发器进行筛选,请在中查看更多详细信息筛选代码推送或拉取请求的触发器。例如,以下内容添加到管道 JSON 定义的管道级别。在此示例中,release-v0release-v1 是要包含的 Git 标签,release-v2 是要排除的 Git 标签。

      "triggers": [ { "providerType": "CodeStarSourceConnection", "gitConfiguration": { "sourceActionName": "Source", "push": [ { "tags": { "includes": [ "release-v0", "release-v1" ], "excludes": [ "release-v2" ] } } ] } } ]