GitLab.com 连接 - AWS CodePipeline

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

GitLab.com 连接

Connections 允许您授权和建立将您的第三方提供商与您的 AWS 资源关联的配置。要将您的第三方存储库关联为管道的源,您应使用连接。

注意

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

要在中添加 GitLab .com 源操作 CodePipeline,您可以选择以下任一选项:

注意

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

注意

在 GitLab .com中授权安装此连接,即表示您授予我们的服务权限,通过访问您的帐户来处理您的数据,并且您可以随时通过卸载应用程序来撤消这些权限。

开始前的准备工作:

  • 您必须已经在 GitLab .com上创建了账户。

    注意

    连接只能访问用于创建并授权连接的账户所拥有的存储库。

    注意

    您可以创建与拥有所有者角色的存储库的连接 GitLab,然后可以将该连接与包含诸如之类的资源的存储库一起使用 CodePipeline。对于群组中的仓库,您无需成为群组拥有者。

  • 要为您的管道指定一个源,必须事先在 gitlab.com 上创建存储库。

创建到 GitLab .com(控制台)的连接

使用以下步骤使用 CodePipeline 控制台为中的项目(存储库)添加连接操作 GitLab。

创建或编辑您的管道
  1. 登录 CodePipeline 控制台。

  2. 选择以下选项之一。

    • 选择创建管道。按照创建管道 中的步骤操作,完成第一个屏幕,然后选择下一步。在 “来源” 页面的 “源提供者” 下,选择GitLab

    • 选择编辑现有管道。选择编辑,然后选择编辑阶段。选择添加或编辑您的源操作。在编辑操作页面的操作名称下,输入您的操作的名称。对于操作提供程序,选择 GitLab

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

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

    • 连接下,如果您已创建到提供程序的连接,请选择该连接。继续执行步骤 9。

    注意

    如果您在创建 GitLab .com 连接之前关闭了弹出窗口,则需要刷新页面。

  4. 要创建到 GitLab .com 存储库的连接,请在选择提供商下选择GitLab。在连接名称中,输入要创建的连接的名称。选择 “连接到” GitLab

    显示所选连接选项的控制台屏幕截图 GitLab。
  5. 当显示 GitLab .com的登录页面时,使用您的凭据登录,然后选择登录

  6. 如果这是您首次授权连接,则会显示一个授权页面,其中包含一条消息,请求授权该连接访问您的 GitLab .com账户。

    选择授权

    屏幕截图显示了授权您的 GitLab .com 账户连接的消息。
  7. 浏览器返回到连接控制台页面。在 “创建 GitLab 连接” 下,新连接显示在 “连接名称” 中。

  8. 选择 “连接到” GitLab

    您将返回到 CodePipeline 控制台。

    注意

    成功创建 GitLab .com 连接后,将在主窗口中显示成功横幅。

    如果您之前未在当前计算机 GitLab 上登录过,则需要手动关闭弹出窗口。

  9. 存储库名称中, GitLab 通过使用命名空间指定项目路径来选择项目名称。例如,对于组级存储库,请按以下格式输入存储库名称:group-name/repository-name。有关路径和命名空间的更多信息,请参阅 https://docs.gitlab.com/ee/api/p get-single-project rojects.ht path_with_namespace ml# 中的字段。有关中 GitLab命名空间的更多信息,请参阅 https://docs.gitlab.com/ee/user/namespace/

    注意

    对于中的群组 GitLab,必须使用命名空间手动指定项目路径。例如,对于组 mygroup 中名为 myrepo 的存储库,请输入以下内容:mygroup/myrepo。你可以在中找到带有命名空间的URL项目路径 GitLab。

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

  11. 分支名称中,选择您希望管道在其中检测源更改的分支。

    注意

    如果未自动填充分支名称,说明您没有存储库的所有者访问权限。原因要么是项目名称无效,要么是所使用的连接无权访问项目/存储库。

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

  13. 选择保存源操作并继续。

创建到 GitLab .com (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和。在此示例中,第三方提供方名称为 GitLab,指定的连接名称为 MyConnection

    aws codestar-connections create-connection --provider-type GitLab --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" ] } } ] } } ]