Class: AWSCDK::CodeBuild::CfnProject::WebhookFilterProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::CodeBuild::CfnProject::WebhookFilterProperty
- Defined in:
- code_build/cfn_project.rb
Overview
WebhookFilter is a structure of the FilterGroups property on the AWS CodeBuild Project ProjectTriggers property type that specifies which webhooks trigger an AWS CodeBuild build.
The Webhook feature isn't available in AWS CloudFormation for GitHub Enterprise projects. Use the AWS CLI or AWS CodeBuild console to create the webhook.
Instance Attribute Summary collapse
-
#exclude_matched_pattern ⇒ Boolean, ...
readonly
Used to indicate that the
patterndetermines which webhook events do not trigger a build. -
#pattern ⇒ String
readonly
For a
WebHookFilterthat usesEVENTtype, a comma-separated string that specifies one or more events. -
#type ⇒ String
readonly
The type of webhook filter.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(pattern:, type:, exclude_matched_pattern: nil) ⇒ WebhookFilterProperty
constructor
A new instance of WebhookFilterProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(pattern:, type:, exclude_matched_pattern: nil) ⇒ WebhookFilterProperty
Returns a new instance of WebhookFilterProperty.
2444 2445 2446 2447 2448 2449 2450 2451 |
# File 'code_build/cfn_project.rb', line 2444 def initialize(pattern:, type:, exclude_matched_pattern: nil) @pattern = pattern Jsii::Type.check_type(@pattern, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "pattern") @type = type Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type") @exclude_matched_pattern = exclude_matched_pattern Jsii::Type.check_type(@exclude_matched_pattern, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "excludeMatchedPattern") unless @exclude_matched_pattern.nil? end |
Instance Attribute Details
#exclude_matched_pattern ⇒ Boolean, ... (readonly)
Used to indicate that the pattern determines which webhook events do not trigger a build.
If true, then a webhook event that does not match the pattern triggers a build. If false, then a webhook event that matches the pattern triggers a build.
2527 2528 2529 |
# File 'code_build/cfn_project.rb', line 2527 def exclude_matched_pattern @exclude_matched_pattern end |
#pattern ⇒ String (readonly)
For a WebHookFilter that uses EVENT type, a comma-separated string that specifies one or more events.
For example, the webhook filter PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED allows all push, pull request created, and pull request updated events to trigger a build.
For a WebHookFilter that uses any of the other filter types, a regular expression pattern. For example, a WebHookFilter that uses HEAD_REF for its type and the pattern ^refs/heads/ triggers a build when the head reference is a branch with a reference name refs/heads/branch-name .
2461 2462 2463 |
# File 'code_build/cfn_project.rb', line 2461 def pattern @pattern end |
#type ⇒ String (readonly)
The type of webhook filter.
There are 11 webhook filter types: EVENT , ACTOR_ACCOUNT_ID , HEAD_REF , BASE_REF , FILE_PATH , COMMIT_MESSAGE , TAG_NAME , RELEASE_NAME , REPOSITORY_NAME , ORGANIZATION_NAME , and WORKFLOW_NAME .
- EVENT
- A webhook event triggers a build when the provided
patternmatches one of nine event types:PUSH,PULL_REQUEST_CREATED,PULL_REQUEST_UPDATED,PULL_REQUEST_CLOSED,PULL_REQUEST_REOPENED,PULL_REQUEST_MERGED,RELEASED,PRERELEASED, andWORKFLOW_JOB_QUEUED. TheEVENTpatterns are specified as a comma-separated string. For example,PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATEDfilters all push, pull request created, and pull request updated events.
Types
PULL_REQUEST_REOPENEDandWORKFLOW_JOB_QUEUEDwork with GitHub and GitHub Enterprise only. TypesRELEASEDandPRERELEASEDwork with GitHub only.
- ACTOR_ACCOUNT_ID
- A webhook event triggers a build when a GitHub, GitHub Enterprise, or Bitbucket account ID matches the regular expression
pattern. - HEAD_REF
- A webhook event triggers a build when the head reference matches the regular expression
pattern. For example,refs/heads/branch-nameandrefs/tags/tag-name.
Works with GitHub and GitHub Enterprise push, GitHub and GitHub Enterprise pull request, Bitbucket push, and Bitbucket pull request events.
- BASE_REF
- A webhook event triggers a build when the base reference matches the regular expression
pattern. For example,refs/heads/branch-name.
Works with pull request events only.
- FILE_PATH
- A webhook triggers a build when the path of a changed file matches the regular expression
pattern.
Works with push and pull request events only.
- COMMIT_MESSAGE
- A webhook triggers a build when the head commit message matches the regular expression
pattern.
Works with push and pull request events only.
- TAG_NAME
- A webhook triggers a build when the tag name of the release matches the regular expression
pattern.
Works with
RELEASEDandPRERELEASEDevents only.
- RELEASE_NAME
- A webhook triggers a build when the release name matches the regular expression
pattern.
Works with
RELEASEDandPRERELEASEDevents only.
- REPOSITORY_NAME
- A webhook triggers a build when the repository name matches the regular expression
pattern.
Works with GitHub global or organization webhooks only.
- ORGANIZATION_NAME
- A webhook triggers a build when the organization name matches the regular expression
pattern.
Works with GitHub global webhooks only.
- WORKFLOW_NAME
- A webhook triggers a build when the workflow name matches the regular expression
pattern.
Works with
WORKFLOW_JOB_QUEUEDevents only. > For CodeBuild-hosted Buildkite runner builds, WORKFLOW_NAME filters will filter by pipeline name.
2520 2521 2522 |
# File 'code_build/cfn_project.rb', line 2520 def type @type end |
Class Method Details
.jsii_properties ⇒ Object
2529 2530 2531 2532 2533 2534 2535 |
# File 'code_build/cfn_project.rb', line 2529 def self.jsii_properties { :pattern => "pattern", :type => "type", :exclude_matched_pattern => "excludeMatchedPattern", } end |
Instance Method Details
#to_jsii ⇒ Object
2537 2538 2539 2540 2541 2542 2543 2544 2545 |
# File 'code_build/cfn_project.rb', line 2537 def to_jsii result = {} result.merge!({ "pattern" => @pattern, "type" => @type, "excludeMatchedPattern" => @exclude_matched_pattern, }) result.compact end |