本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
教程:筛选拉取请求的分支名称以启动管道
在本教程中,您将创建一个连接到 GitHub .com存储库的管道,在该存储库中,源操作配置为使用筛选拉取请求的触发器配置启动管道。当指定分支发生指定的拉取请求事件时,您的管道就会启动。此示例说明如何创建允许筛选分支名称的管道。有关使用触发器的更多信息,请参阅在管道中触发筛选 JSON (CLI)。有关使用 glob 格式的正则表达式模式进行筛选的更多信息,请参阅。使用语法中的 glob 模式
本教程通过CodeStarSourceConnection
操作类型连接到 GitHub .com。
先决条件
在开始之前,您必须执行以下操作:
-
使用您的 GitHub .com 账户创建 GitHub .com 存储库。
-
准备好您的 GitHub 凭证。当你使用 Amazon Web Services Management Console 来建立连接时,系统会要求你使用自己的 GitHub 凭据登录。
步骤 1:创建管道以启动指定分支的拉取请求
在此部分中,您将使用以下操作创建管道:
-
与您的 GitHub .com存储库的连接和操作的源阶段。
-
带有生成操作的 Amazon CodeBuild 生成阶段。
使用向导创建管道
-
登录 CodePipeline 控制台,网址为 https://console.aws.amazon.com/codepipeline/
。 -
在欢迎页面、入门页面或管道页面上,选择创建管道。
-
在步骤 1:选择管道设置的管道名称中,输入
MyFilterBranchesPipeline
。 -
在管道类型中,保留默认选择 V2。管道类型有不同的特点和价格。有关更多信息,请参阅 管道类型。
-
在服务角色中,选择新建服务角色。
注意
如果您选择使用现有的 CodePipeline 服务角色,请确保已
codeconnections:UseConnection
将 IAM 权限添加到您的服务角色策略中。有关 CodePipeline 服务角色的说明,请参阅为 CodePipeline 服务角色添加权限。 -
在高级设置下,保留原定设置值。在构件存储中,选择默认位置以将默认构件存储(如指定为默认值的 Amazon S3 项目存储桶)用于为管道选择的区域中的管道。
注意
这不是源代码的源存储桶。这是管道的项目存储。每个管道都需要一个单独的构件存储,例如 S3 存储桶。
选择下一步。
-
在步骤 2:添加源阶段页面上,添加源阶段:
-
在源提供程序中,选择 GitHub (版本 2)。
-
在连接下,选择一个现有连接或创建一个新连接。要创建或管理 GitHub 源操作的连接,请参阅GitHub 连接。
-
在存储库名称中,选择您的 GitHub .com存储库的名称。
-
在 “触发器类型” 下,选择 “指定过滤器”。
在事件类型下,选择拉取请求。选择拉取请求下的所有事件,以便针对已创建、更新或已关闭的拉取请求发生事件。
在 “分支” 下的 “包含” 字段中输入
main*
。重要
将为 WebHookv2 事件配置以此触发器类型开头的管道,并且不会使用 Webhook 事件(对所有推送事件进行更改检测)来启动管道。
选择下一步。
-
-
在 “添加构建” 阶段的 “生成提供者” 中,选择Amazon CodeBuild。允许区域默认为管道区域。按照中的说明选择或创建构建项目教程:使用 Git 标签启动管道。此操作仅在本教程中用作创建管道所需的第二阶段。
-
在步骤 4:添加部署阶段页面上,选择跳过部署阶段,并通过再次选择跳过接受警告消息。选择下一步。
-
在步骤 5:审核中,选择创建管道。
第 2 步:在 GitHub .com 中创建并合并拉取请求以开始执行管道
在本节中,您将创建和合并拉取请求。这将启动您的管道,打开的拉取请求执行一次,已关闭的拉取请求执行一次。
创建拉取请求并启动管道
-
在 GitHub .com 中,通过更改功能分支上的 README.md 并向该分支提出拉取请求来创建拉取请求。
main
使用类似的消息提交更改Update README.md for PR
。 -
管道从源版本开始,将拉取请求的源消息显示为 Update README.m d for PR。
-
选择 History (历史记录)。在管道执行历史记录中,查看启动管道执行的 CREATED 和 MERGED 拉取请求状态事件。