Download as pdf or txt
Download as pdf or txt
You are on page 1of 1

Pull Request Continuous Integration 1

Webhooks are configured between a


supported Git provider and AWS
Build a Continuous Integration/Continuous Delivery (CI\CD) Pipeline for Git Pull Requests CodeBuild. The Git provider sends events
Run CI\CD at pull request (PR) time to move from validating a build to validating a whole environment before merging to whenever a PR is created or updated.
mainline. This approach allows developers to get higher quality feedbacks earlier, speed up PR reviews (now enriched by AWS CodeBuild accepts Git PR events and
CI\CD outcomes), and minimize impacts of broken builds to development teams. 2 compresses the PR codebase in an archive.
This archive is stored in the Git Artifacts
Amazon S3 bucket; AWS CodeBuild posts
Supported Git Providers a message on a Amazon SQS queue about
a fresh codebase ready to be processed.
Bitbucket GitHub An AWS Lambda function is triggered by
AWS CodeCommit 3 Amazon SQS whenever a new codebase is
ready to be processed. The Lambda
1 function starts the CI\CD process and
AWS Cloud Git Artifacts moves the new codebase to the Pipeline
Source Amazon S3 bucket location. This S3
2 2 bucket acts as the source of AWS
CodePipeline. The Lambda function also
AWS CodeBuild 4 checks any automation prerequisite, like
Amazon S3 status of third-party resources or
Pipeline Source environments consumed by CI\CD, and
removes obsolete codebase from the
3 3 backlog if updates are submitted against a
PR.

Amazon Simple AWS Lambda Amazon S3 AWS CodePipeline orchestrates CI\CD


Queue Service 4 workflow for the specific project under
development by statically validating the
codebase, running unit tests, building
artifacts, creating a preview environment
where the application is deployed, and
4
executing integration and end-to-end (E2E)
tests. Amazon CloudWatch Events
AWS CodePipeline Amazon CloudWatch AWS Lambda
monitors the changes in pipeline stages; a
Events
Lambda function updates the PR based on
status of events generated by AWS
CodePipeline (success, in progress, failed,
completed).
© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Reference Architecture

You might also like