Note: A 19 minute video showing the steps of this tutorial is available on YouTube at: https://youtu.be/5XcV4Ar6kns.
If you are using DevOps practices such as continuous deployment, a change to your application should trigger a deployment script. That script would provision virtual hardware and deploy the new code to it. Amazon Web Services (AWS) provides the CloudFormation service for automatic provisioning and the CodeDeploy service for automatic application deployment. This tutorial illustrates how to script these two services using their Command Line Interfaces (CLIs). Careful setup is needed, but the result can be a straightforward reproducible deployment process.
This is an intermediate level tutorial that presumes some knowledge
of AWS and Unix. You should have some familiarity with the process for
launching instances in EC2 and with EC2 terms such as key pairs,
security groups, and virtual private clouds. You should know how to log
in to an EC2 instance and how to transfer files to it. We also assume
some background with Unix directory structure and the use of the
As you go through the tutorial you will be using Amazon's Identity and Access Management (IAM) service to manage authentication and authorization, so you should probably have some previous exposure to IAM.
The main services we will be using are CloudFormation, CodeDeploy
and S3. We describe how to use these services in our scenario, but if
you have not encountered them before it might be useful to first watch
the very short introductory videos that Amazon provides on each
service's web site:
The tutorial includes the following: