本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
用于 GitLab 自我管理的连接
Connections 允许您授权和建立将您的第三方提供商与您的 AWS 资源关联的配置。要将您的第三方存储库关联为管道的源,您应使用连接。
注意
此功能不适用于亚太地区(香港)、亚太地区(海得拉巴)、亚太地区(雅加达)、亚太地区(墨尔本)、亚太地区(墨尔本)、亚太地区(大阪)、非洲(开普敦)、中东(巴林)、中东(UAE)、欧洲(西班牙)、欧洲(苏黎世)、以色列(特拉维夫)或 AWS GovCloud (美国西部)区域。要参考其他可用操作,请参阅 产品和服务与 CodePipeline。有关在欧洲地区(米兰)区域使用此操作的注意事项,请参阅CodeStarSourceConnection 适用于 Bitbucket Cloud GitHub、、 GitHub 企业服务器、 GitLab .com 和 GitLab 自我管理的操作中的说明。
要在中添加 GitLab 自我管理的源操作 CodePipeline,您可以选择以下任一选项:
-
使用 CodePipeline 控制台的 “创建管道” 向导或 “编辑” 操作页面选择GitLab自我管理的提供者选项。参阅创建与 GitLab自我管理(控制台)的连接以添加操作。控制台可帮助您创建主机资源和连接资源。
-
使用CLI向
GitLabSelfManaged
提供者添加操作的CreateSourceConnection
操作配置并创建您的资源:-
要创建您的连接资源,请参阅创建主机并连接到 GitLab自行管理 () CLI使用创建主机资源和连接资源CLI。
-
使用CodeStarSourceConnection 适用于 Bitbucket Cloud GitHub、、 GitHub 企业服务器、 GitLab .com 和 GitLab 自我管理的操作中的
CreateSourceConnection
示例操作配置来添加操作,如创建管道 (CLI) 中所示。
-
注意
您也可以使用开发人员工具控制台,在设置下创建连接。参阅创建连接。
开始前的准备工作:
-
您必须已经使用自己管理安装的 GitLab 企业版或 GitLab 社区版创建了帐户, GitLab 并且安装了企业版或社区版。有关更多信息,请参阅https://docs.gitlab.com/ee/订阅/self_managed/
。 注意
连接只为用于创建并授权连接的账户提供访问权限。
注意
您可以创建与拥有所有者角色的存储库的连接 GitLab,然后该连接可以与资源一起使用,例如 CodePipeline。对于群组中的仓库,您无需成为群组拥有者。
-
您必须已经创建了仅具有以下范围缩小权限的 GitLab 个人访问令牌 (PAT):api。有关更多信息,请参阅 https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html
。您必须是管理员才能创建和使用PAT。 注意
您的PAT用于授权主机,不会以其他方式存储或由连接使用。要设置主机,可以创建临时主机,PAT然后在设置主机后,可以删除PAT。
-
您可以选择提前设置主机。您可以设置带或不带的主机VPC。有关VPC配置的详细信息以及有关创建主机的其他信息,请参阅创建主机。
创建与 GitLab自我管理(控制台)的连接
使用这些步骤使用 CodePipeline 控制台为您的 GitLab自管理存储库添加连接操作。
注意
GitLab 自管理连接仅提供对用于创建连接的 GitLab 自我管理账户所拥有的存储库的访问权限。
开始前的准备工作:
要实现 GitLab 自我管理的主机连接,您必须完成为连接创建主机资源的步骤。请参阅管理连接主机。
步骤 1:创建或编辑您的管道
创建或编辑您的管道
-
登录 CodePipeline 控制台。
-
选择以下选项之一。
-
选择创建管道。按照创建管道 中的步骤操作,完成第一个屏幕,然后选择下一步。在来源页面的来源提供商下,选择GitLab 自我管理。
-
选择编辑现有管道。选择编辑,然后选择编辑阶段。选择添加或编辑您的源操作。在编辑操作页面的操作名称下,输入您的操作的名称。在操作提供者中,选择GitLab 自我管理。
-
-
请执行以下操作之一:
-
在 Connecti on 下,如果您尚未创建与提供商的连接,请选择 Connection 以进行 GitLab 自我管理。继续执行步骤 2:创建 GitLab 自我管理连接。
-
在连接下,如果您已创建到提供程序的连接,请选择该连接。继续执行步骤 3:保存连接的源操作。
-
创建与 GitLab 自我管理的连接
选择创建连接后,将显示 “Connect t GitLab o 自我管理” 页面。
连接到 GitLab 自我管理
-
在连接名称,输入您的连接的名称。
-
在中 URL,输入服务器的终端节点。
注意
如果提供的URL已用于为连接设置主机,则系统将提示您选择先前为该端点创建的主机资源ARN。
-
如果您已在 Amazon 上启动服务器VPC并希望与您的服务器建立连接VPC,请选择 Use a VPC 并填写相关信息VPC。
-
选择 Connect 以进行 GitLab 自我管理。创建的连接显示为待处理状态。将使用您提供的服务器信息为连接创建一个主机资源。对于主机名URL,使用。
-
选择更新待处理的连接。
-
如果页面打开时显示一条重定向消息,确认您是否要继续访问该提供程序,请选择继续。输入该提供程序的授权。
-
A 设置
host_name
页面显示。在 “提供个人访问令牌” 中,仅 GitLabPAT向您提供以下限定范围的权限:。api
注意
只有管理员才能创建和使用PAT。
选择继续。
-
连接页面显示已创建的连接处于可用状态。
步骤 3:保存您 GitLab自行管理的源代码操作
使用向导或编辑操作页面上的这些步骤,将源操作与连接信息一起保存。
完成并保存您的源操作和连接
-
在存储库名称中,选择第三方存储库的名称。
-
如果您的操作是操作,则可以在 Pip elin e 触发器下添加触发器。 CodeConnections 要配置管道触发器配置并选择使用触发器进行筛选,请在中查看更多详细信息筛选代码推送或拉取请求的触发器。
-
在输出构件格式中,您必须为构件选择格式。
-
要使用默认方法存储 GitLab 自管理操作的输出对象,请选择CodePipeline默认。该操作访问存储库中的文件,并将工件存储在管道构件存储中的ZIP文件中。
-
要存储包含仓库URL引用的JSON文件,以便下游操作可以直接执行 Git 命令,请选择 “完全克隆”。此选项只能由 CodeBuild 下游操作使用。
-
-
在向导上选择下一步,或者在编辑操作页面上选择保存。
创建主机并连接到 GitLab自行管理 () CLI
您可以使用 AWS Command Line Interface (AWS CLI) 来创建连接。
为此,请使用 create-connection 命令。
重要
默认情况下,通过 AWS CLI 或创建的连接 AWS CloudFormation 处于PENDING
状态。使用CLI或创建连接后 AWS CloudFormation,使用控制台编辑连接以使其处于状态AVAILABLE
。
您可以使用 AWS Command Line Interface (AWS CLI) 为已安装的连接创建主机。
您可以使用主机来表示安装第三方提供程序的基础设施的终端节点。使用完成主机创建后CLI,该主机将处于 “待处理” 状态。然后,您应设置或注册主机,使之转为可用状态。主机可用后,完成创建连接的步骤。
为此,请使用 create-host 命令。
重要
默认情况下,通过创建的主机 AWS CLI 处于Pending
状态。使用创建主机后CLI,使用控制台或CLI将主机设置为其状态Available
。
要创建主机
-
打开终端(Linux、macOS 或 Unix)或命令提示符(Windows)。 AWS CLI 使用运行create-host命令,
--provider-endpoint
为您的连接指定--name
--provider-type
、和。在此示例中,第三方提供程序名称为GitLabSelfManaged
,终端节点为my-instance.dev
。aws codestar-connections create-host --name MyHost --provider-type GitLabSelfManaged --provider-endpoint "https://my-instance.dev"
如果成功,此命令将返回主机的 Amazon 资源名称 (ARN) 信息,如下所示。
{ "HostArn": "arn:aws:codestar-connections:us-west-2:
account_id
:host/My-Host-28aef605" }完成此步骤后,主机处于
PENDING
状态。 -
使用控制台完成主机设置并将主机变为
Available
状态。
创建与 GitLab 自我管理的连接
-
打开终端(Linux、macOS 或 Unix)或命令提示符(Windows)。 AWS CLI 使用运行create-connection命令,
--connection-name
为您的连接指定--host-arn
和。aws codestar-connections create-connection --host-arn arn:aws:codestar-connections:us-west-2:
account_id
:host/MyHost-234EXAMPLE --connection-name MyConnection如果成功,此命令将返回类似于以下内容的连接ARN信息。
{ "ConnectionArn": "arn:aws:codestar-connections:us-west-2:
account_id
:connection/aEXAMPLE-8aad" } -
使用控制台设置待处理的连接。
-
管道默认会在向连接源存储库推送代码时检测更改。要配置手动发布或 Git 标签管道触发器配置,请执行以下操作之一:
-
要将管道触发器配置为仅通过手动发布启动,请在配置中添加以下行:
"DetectChanges": "false",
-
要将管道触发器配置配置配置为使用触发器进行筛选,请在中查看更多详细信息筛选代码推送或拉取请求的触发器。例如,以下内容添加到管道JSON定义的管道级别。在此示例中,
release-v0
和release-v1
是要包含的 Git 标签,release-v2
是要排除的 Git 标签。"triggers": [ { "providerType": "CodeStarSourceConnection", "gitConfiguration": { "sourceActionName": "Source", "push": [ { "tags": { "includes": [ "release-v0", "release-v1" ], "excludes": [ "release-v2" ] } } ] } } ]
-