Skip to content

Instantly share code, notes, and snippets.

@jamesward
Created June 15, 2012 21:01
Show Gist options
  • Save jamesward/2938674 to your computer and use it in GitHub Desktop.
Save jamesward/2938674 to your computer and use it in GitHub Desktop.
Continuous Delivery on the Cloud

Continuous Delivery on the Cloud

Intro

  • Continuous Integration, Continuous Delivery, NoOps / Devops
  • Goals
    • Reduce Risk
    • Deliver Faster
  • Heroku
  • Play Framework

Create an App

  • New Play App
  • Run
  • Make change

Git Everything

  • Goal: Consistency
  • Deploy App

The Road to Production is One Way

  • Goal: Code / Deploy Correlation
  • Heroku Releases

Configuration

  • Goal: The Environment Provides the Config
  • Litmus Test
  • Add Database Config
  • Test Locally
  • Deploy App

Schema Migrations

  • Goal: Manage Schema Migrations like Code Deploy Deployments (Versioned, Roll-Backs, etc)
  • Turn off auto-schema gen
  • Make schema change
  • Deploy
  • Update Code Model
  • Deploy

Ephemeral Web Tier

  • Goal: Horizontal Instant Scalability
  • Scale App
  • Add Session Usage To App
  • Deploy
  • Load Balancer Connection Pausing
  • Use Session
  • Restart
  • Show Session

Logging

  • Goal: External Log Stream
  • Logging Demo
  • Add Papertrail
  • Create "error" alert

Static Assets

  • Goal: Single Source for Entire Web System
  • Add CloudFront

CI & CD

  • Goal: Build, Test, Deploy
  • CloudBees

Further Learning

  • 12 Factor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment