Deploy Quick Start on AWS

The Quick Start includes an AWS CloudFormation template that automates the deployment, and a guide with step-by-step instructions for deploying, configuring, and testing the integration.

For additional automated reference deployments from AWS, view the complete Quick Start catalog.

Git-Logo


This Quick Start deploys HTTPS endpoints and AWS Lambda functions for implementing webhooks, to enable event-driven integration between Git services and Amazon Web Services (AWS) on the AWS Cloud.

After you deploy the Quick Start, you can set up a webhook that uses the endpoints to create a bridge between your Git repository and AWS services like AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy. With this setup, builds and pipeline executions occur automatically when you commit your code to a Git repository, and your code can be continuously integrated, tested, built, and deployed on AWS with each change. 

  • What you'll build

    Use this Quick Start to set up the following environment on AWS:

    • An API Gateway endpoint to accept the webhook requests from Git.
    • Lambda functions to connect to the Git service, either over Secure Shell (SSH) or through the Git service’s endpoint. These functions zip the code and upload it to Amazon Simple Storage Service (Amazon S3).
    • An AWS KMS key to encrypt the private key used to connect to the repository over SSH.
    • Two S3 buckets: One bucket stores the zipped contents of your Git repository, and the second bucket stores the AWS KMS-encrypted SSH private keys that are generated during stack creation. Note that the first bucket has versioning enabled, and all previous versions are retained indefinitely. If you’d like to manage the retention period for old versions, follow the instructions in the Amazon S3 documentation.
    • Several IAM roles required for the Lambda functions and API Gateway. The inline permissions attached to these roles are scoped using the least privilege model.
    • Two Lambda-backed AWS CloudFormation custom resources. One resource generates an SSH keypair, encrypts it using AWS KMS, and stores it in Amazon S3. The second resource deletes the content of the two S3 buckets on stack deletion.


    For details, see the Quick Start deployment guide.

  • Deployment details

    Integrate your Git environment with AWS in a few simple steps:

    1. Sign up for an AWS account at https://aws.amazon.com.
    2. Launch the Quick Start.
      The deployment takes about 15 minutes.
    3. Configure your Git repository to set up webhooks, following the instructions from your Git service. Note that your Git repository must be reachable from the Internet.
    4. Configure an AWS service to connect to the S3 object.
    5. Test a commit.


    For detailed deployment and configuration instructions, see the Quick Start deployment guide.

  • Cost and licenses

    You are responsible for the cost of the AWS services used while running this Quick Start reference deployment. There is no additional cost for using the Quick Start.

    The Quick Start provides an Amazon API Gateway endpoint and several Lambda functions to handle the download, zipping, and deployment of code to Amazon S3. AWS CodePipeline carries a cost for each active pipeline; see AWS CodePipeline pricing. Depending on your configuration, the Quick Start may deploy an AWS Key Management Service (AWS KMS) key; for pricing, see AWS Key Management Service pricing. API Gateway, Amazon S3, and Lambda costs vary depending on how often you commit code to your repository; each commit triggers a request to the Lambda execution in API Gateway; for details, see the pricing pages for API Gateway, Amazon S3, and Lambda.