class aws_cdk.aws_events_targets.CodeBuildProject(project, *, event=None, event_role=None, dead_letter_queue=None, max_event_age=None, retry_attempts=None)

Bases: object

Start a CodeBuild build when an Amazon EventBridge rule is triggered.




import aws_cdk.aws_sns as sns
import aws_cdk.aws_events_targets as targets

# repo: codecommit.Repository
# project: codebuild.PipelineProject
# my_topic: sns.Topic

# starts a CodeBuild project when a commit is pushed to the "master" branch of the repo

# publishes a message to an Amazon SNS topic when a comment is made on a pull request
rule = repo.on_comment_on_pull_request("CommentOnPullRequest",
  • project (IProject) –

  • event (Optional[RuleTargetInput]) – The event to send to CodeBuild. This will be the payload for the StartBuild API. Default: - the entire EventBridge event

  • event_role (Optional[IRole]) – The role to assume before invoking the target (i.e., the codebuild) when the given rule is triggered. Default: - a new role will be created

  • dead_letter_queue (Optional[IQueue]) – The SQS queue to be used as deadLetterQueue. Check out the considerations for using a dead-letter queue. The events not successfully delivered are automatically retried for a specified period of time, depending on the retry policy of the target. If an event is not delivered before all retry attempts are exhausted, it will be sent to the dead letter queue. Default: - no dead-letter queue

  • max_event_age (Optional[Duration]) – The maximum age of a request that Lambda sends to a function for processing. Minimum value of 60. Maximum value of 86400. Default: Duration.hours(24)

  • retry_attempts (Union[int, float, None]) – The maximum number of times to retry when the function returns an error. Minimum value of 0. Maximum value of 185. Default: 185


bind(_rule, _id=None)

Allows using build projects as event rule targets.

  • _rule (IRule) –

  • _id (Optional[str]) –

Return type