DevOps in the Cloud LiveLessons: Create a Continuous Delivery Platform Using Amazon Web Services (AWS) and Jenkins

Video description

DevOps in the Cloud LiveLessons walks viewers through the process of putting together a complete continuous delivery platform for a working software application written in Ruby on Rails along with examples in other development platforms such as Grails and Java on the companion website. These applications are deployed to Amazon Web Services (AWS), which is an infrastructure as a service, commonly referred to as “the cloud.” Paul M. Duvall goes through the pieces that make up this platform including infrastructure and environments, continuous integration, build and deployment scripting, testing and database. Also, viewers will learn configuration management and collaboration practices and techniques along with what those nascent terms known as DevOps, continuous delivery and continuous deployment are all about. Finally, since this LiveLesson focuses on deploying to the cloud, viewers will learn the ins and outs of many of the services that make up the AWS cloud infrastructure. DevOps in the Cloud LiveLessons includes contributions by Brian Jakovich, who is a Continuous Delivery Engineer at Stelligent.

Visit to download the complete continuous delivery platform examples that are used in these LiveLessons. Website is best viewed in Mozilla Firefox.

About the Author:

Paul M. Duvall
 is the CEO and CTO of Stelligent, an expert in implementing continuous delivery solutions. A featured speaker at many leading software conferences, he has worked in virtually every role on software projects: developer, project manager, architect, and tester. He is the principal author of Continuous Integration: Improving Software Quality and Reducing Risk (Addison-Wesley, 2007), a 2008 Jolt Award Winner and an author of Startup@Cloud: 33 tips for running your company using cloud-based software. Paul contributed to the UML 2 Toolkit (Wiley, 2003), authored a series for IBM developerWorks called Automation for the People, and contributed to No Fluff Just Stuff Anthology: The 2007 Edition (Pragmatic Programmers, 2007). He is passionate about automation, software delivery and the cloud and actively blogs on

Table of contents

  1. Introduction to DevOps in the Cloud
  2. 5 Steps to Continuous Delivery
  3. Lesson 1: Deploying a Working Software Application to the Cloud
    1. Introduction
    2. Set up and check in changes to application code
    3. Make simple configuration changes
    4. Change an existing automated test
    5. Make scripted changes to the database
    6. Make a change to a simple build script
    7. Make a change to a deployment script
    8. Make a change to the infrastructure scripts
    9. Run Jenkins Continuous Integration server jobs
    10. View and run jobs within a Delivery Pipeline
    11. View static analysis reports
    12. View feedback from a dashboard
  4. Lesson 2: DevOps, Continuous Delivery, Continuous Deployment and the Cloud
    1. Introduction
    2. Define Continuous Delivery, DevOps, Continuous Deployment and the Cloud
    3. Practices, patterns and tools for implementing Continuous Delivery in the Cloud
    4. Create a ‘spaghetti diagram’ and a ‘value-stream map’
  5. Lesson 3: Amazon Web Services
    1. Introduction
    2. The basics of the AWS Management Console
    3. Define security groups
    4. The basics of Elastic Compute Cloud (EC2) virtual instances
    5. Use Elastic Load Balancing (ELB)
    6. Employ Auto Scaling
    7. Use Amazon CloudWatch to monitor resources
    8. Use Amazon Route 53 to manage a domain
    9. Use Amazon Simple Storage Service (S3) to store objects
    10. The basics of AWS CloudFormation for automating infrastructures
    11. The basics of AWS Elastic Beanstalk
    12. The basics of some other available AWS services
  6. Lesson 4: Development and Continuous Integration
    1. Introduction
    2. Continuous Integration Architecture
    3. Install and configure Jenkins plug-ins
    4. Configure a scripted environment job
    5. Configure a scripted build job
    6. Configure a scripted deployment job
    7. Configure and run on-demand jobs
    8. Configure and run scheduled jobs
    9. Configure and run continuous jobs
    10. Create continuous feedback mechanisms
  7. Lesson 5: Infrastructure Automation
    1. Introduction
    2. Create a CloudFormation template
    3. Integrate Puppet with CloudFormation
    4. Create a transient environment
    5. Lock down environments
    6. Create a ‘Chaos Monkey’
  8. Lesson 6: Building and Deploying Software
    1. Introduction
    2. Script a build
    3. Script a deployment
    4. Set up and utilize a dependency-management repository
    5. Deploy to target environments
    6. Perform a self-service deployment
  9. Lesson 7: Configuration Management
    1. Introduction
    2. Work from the canonical version
    3. Version system configurations and other artifacts
    4. Setup a dynamic configuration management database
  10. Lesson 8: Database
    1. Introduction
    2. Script a database
    3. Script the upgrade and downgrade of a database
    4. Use a database sandbox
  11. Lesson 9: Testing
    1. Introduction
    2. Write scripted unit tests
    3. Write scripted infrastructure tests
    4. Write scripted deployment (smoke) tests
  12. Lesson 10: Delivery Pipeline
    1. Introduction
    2. Configure and run a delivery pipeline in Jenkins

Product information

  • Title: DevOps in the Cloud LiveLessons: Create a Continuous Delivery Platform Using Amazon Web Services (AWS) and Jenkins
  • Author(s):
  • Release date: May 2012
  • Publisher(s): Addison-Wesley Professional
  • ISBN: 0132836351