GitLab グループウェブフックイベントのフィルタリング (AWS CloudFormation) - AWS CodeBuild

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

GitLab グループウェブフックイベントのフィルタリング (AWS CloudFormation)

AWS CloudFormation テンプレートを使用してグループウェブフックイベントをフィルタリングするには、AWS CodeBuild プロジェクトの ScopeConfiguration プロパティを使用します。グループ GitLab ウェブフックの詳細については、「GitLab グループウェブフック」を参照してください。

以下の YAML 形式の AWS CloudFormation テンプレート部分によって、4 つのフィルタグループが作成されます。1 つまたはすべてが true と評価されると、これらが一緒になってビルドをトリガーします。

  • 最初のフィルタグループでは、アカウント ID 12345 を持たない GitLab ユーザーが、正規表現 ^refs/heads/main$ と一致する Git 参照名を持つブランチに対してプルリクエストを作成または更新することを指定します。

  • 2 番目のフィルターグループでは、正規表現 READ_ME に一致する Git 参照名を持つブランチで正規表現 ^refs/heads/.* に一致する名前のファイルに対してプッシュリクエストが作成されることを指定します。

  • 3 番目のフィルタグループでは、正規表現 \[CodeBuild\] に一致する HEAD コミットメッセージを使用してプッシュリクエストを指定します。

  • 4 番目のフィルタグループは、正規表現 \[CI-CodeBuild\] に一致する CI/CD パイプライン名を持つ GitLab CI/CD パイプラインジョブリクエストを指定します。

CodeBuildProject: Type: AWS::CodeBuild::Project Properties: Name: MyProject ServiceRole: service-role Artifacts: Type: NO_ARTIFACTS Environment: Type: LINUX_CONTAINER ComputeType: BUILD_GENERAL1_SMALL Image: aws/codebuild/standard:5.0 Source: Type: GITLAB Location: source-location Triggers: Webhook: true ScopeConfiguration: Name: group-name FilterGroups: - - Type: EVENT Pattern: PULL_REQUEST_CREATED,PULL_REQUEST_UPDATED - Type: BASE_REF Pattern: ^refs/heads/main$ ExcludeMatchedPattern: false - Type: ACTOR_ACCOUNT_ID Pattern: 12345 ExcludeMatchedPattern: true - - Type: EVENT Pattern: PUSH - Type: HEAD_REF Pattern: ^refs/heads/.* - Type: FILE_PATH Pattern: READ_ME ExcludeMatchedPattern: true - - Type: EVENT Pattern: PUSH - Type: COMMIT_MESSAGE Pattern: \[CodeBuild\] - Type: FILE_PATH Pattern: ^src/.+|^test/.+ - - Type: EVENT Pattern: WORKFLOW_JOB_QUEUED - Type: WORKFLOW_NAME Pattern: \[CI-CodeBuild\]