AWS CodeDeploy
User Guide (API Version 2014-10-06)

A new console design is available for this service. Although the procedures in this guide were written for the older version of the console, you will find many of the concepts and basic procedures in this guide still apply.

Choose an AWS CodeDeploy Repository Type

The storage location for files required by AWS CodeDeploy is called a repository. Use of a repository depends on which compute platform your deployment uses.

  • EC2/On-Premises: To deploy your application code to one or more instances, your code must be bundled into an archive file and placed in a repository where AWS CodeDeploy can access it during the deployment process. You bundle your deployable content and an AppSpec file into an archive file, and then upload it to one of the repository types supported by AWS CodeDeploy.

  • AWS Lambda: Deployments require an AppSpec file, which can be accessed during a deployment in one of the following ways:

AWS CodeDeploy currently supports the following repository types:

Amazon S3 Amazon Simple Storage Service (Amazon S3) is the AWS solution for secure, scalable object storage. Amazon S3 stores data as objects in buckets. An object consists of a file and, optionally, any metadata that describes that file.

To store an object in Amazon S3, you upload the file you want to store to a bucket. When you upload a file, you can set permissions and metadata on the object.

Learn more:

GitHub (EC2/On-Premises deployment only) You can store your application revisions in GitHub repositories. You can trigger a deployment from a GitHub repository whenever the source code in that repository is changed.

Learn more:


(EC2/On-Premises deployment only) You can push code to Amazon EC2 instances directly from the Bitbucket UI to any of your deployment groups without having to sign in to your continuous integration (CI) platform or Amazon EC2 instances to run a manual deployment process. Bitbucket first pushes the code to an Amazon S3 bucket you have specified, and from there deploys the code. After the initial setup to support this process is complete, however, the code you push from Bitbucket is automatically deployed to your instances without any intermediate steps.

Learn more:


An AWS Lambda deployment works with an Amazon S3 repository only.