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

The procedures in this guide support the new console design. If you choose to use the older version of the console, you will find many of the concepts and basic procedures in this guide still apply. To access help in the new console, choose the information icon.

Integration with Partner Products and Services

AWS CodeDeploy has built-in integration for the following partner products and services:

Ansible

If you already have a set of Ansible playbooks, but just need somewhere to run them, the template for Ansible and AWS CodeDeploy demonstrates how a couple of simple deployment hooks can ensure Ansible is available on the local deployment instance and runs the playbooks. If you already have a process for building and maintaining your inventory, there's also an Ansible module you can use to install and run the AWS CodeDeploy agent.

Learn more:

Atlassian – Bamboo and Bitbucket

The AWS CodeDeploy task for Bamboo compresses the directory that contains an AppSpec file into a .zip file, uploads the file to Amazon S3, and then starts the deployment according to the configuration provided in the AWS CodeDeploy application.

Atlassian Bitbucket support for AWS CodeDeploy enables you to push code to Amazon EC2 instances directly from the Bitbucket UI, on demand, to any of your deployment groups. This means that after you update code in your Bitbucket repository, you do not have to sign in to your continuous integration (CI) platform or Amazon EC2 instances to run a manual deployment process.

Learn more:

Chef

AWS provides two template samples for integrating Chef and AWS CodeDeploy. The first is a Chef cookbook that installs and starts the AWS CodeDeploy agent. This allows you to continue managing your host infrastructure with Chef while using AWS CodeDeploy. The second sample template demonstrates how to use AWS CodeDeploy to orchestrate the running of cookbooks and recipes with chef-solo on each node.

Learn more:

CircleCI

CircleCI provides an automated testing and continuous integration and deployment toolset. After you create an IAM role in AWS to use with CircleCI and configure your deployment parameters in your circle.yml file, you can use CircleCI with AWS CodeDeploy to create application revisions, upload them to an Amazon S3 bucket, and then initiate and monitor your deployments.

Learn more:

CloudBees

You can use the AWS CodeDeploy Jenkins plugin, available on CloudBees DEV@cloud, as a post-build action. For example, at the end of a continuous delivery pipeline, you can use it to deploy an application revision to your fleet of servers.

Learn more:

Codeship

You can use Codeship to deploy application revisions through AWS CodeDeploy. You can use the Codeship UI to add AWS CodeDeploy to a deployment pipeline for a branch.

Learn more:

GitHub

You can use AWS CodeDeploy to deploy application revisions from GitHub repositories. You can also trigger a deployment from a GitHub repository whenever the source code in that repository is changed.

Learn more:

HashiCorp Consul

You can use the open-source HashiCorp Consul tool to help ensure the health and stability of your application environment when you deploy applications in AWS CodeDeploy. You can use Consul to register applications to be discovered during deployment, put applications and nodes in maintenance mode to omit them from deployments, and stop deployments if target instances become unhealthy.

Learn more:

Jenkins

The AWS CodeDeploy Jenkins plugin provides a post-build step for your Jenkins project. Upon a successful build, it zips the workspace, uploads to Amazon S3, and starts a new deployment.

Learn more:

Puppet Labs

AWS provides sample templates for Puppet and AWS CodeDeploy. The first is a Puppet module that installs and starts the AWS CodeDeploy agent. This allows you to continue managing your host infrastructure with Puppet while using AWS CodeDeploy. The second sample template demonstrates how to use AWS CodeDeploy to orchestrate the running of modules and manifests with a masterless puppet on each node.

Learn more:

SaltStack

You can integrate SaltStack infrastructure with AWS CodeDeploy. You can use the AWS CodeDeploy module to install and run the AWS CodeDeploy agent on your minions or, with a couple of simple deployment hooks, you can use AWS CodeDeploy to orchestrate the running of your Salt States.

Learn more:

Solano Labs

After your build has passed its tests in Solano CI, a script runs to prepare your application for release. The aws deploy push command packages and pushes your application through AWS CodeDeploy, and then optionally deploys the application revision to a deployment group and confirms it has been deployed. You can also set up automatic AWS CodeDeploy deployments from your CI build.

Learn more:

TeamCity

You can use the AWS CodeDeploy Runner plugin to deploy applications directly from TeamCity. The plugin adds a TeamCity build step that prepares and uploads an application revision to an Amazon S3 bucket, registers the revision in an AWS CodeDeploy application, creates an AWS CodeDeploy deployment and, if you choose, waits for the deployment to be completed.

Learn more:

Travis CI

You can configure Travis CI to trigger a deployment in AWS CodeDeploy after a successful build.

Learn more:

Topics