Project

dumbwaiter

0.0
Repository is archived
No commit activity in last 3 years
No release in over 3 years
Hoist your code up to Opsworks
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

 Project Readme

Dumbwaiter Build Status Code Climate

Dumbwaiter hoists your Rails application up to OpsWorks and ratchets deployment information back down.

Origin

Before Scalarium became OpsWorks, they maintained a gem that did the sorts of functions described here. Like Heroku Toolbelt, the Scalarium gem offered users a very basic workflow experience: upload and run Chef recipes, execute commands remotely and watch their output.

Goals

Dumbwaiter prescribes a very specific OpsWorks-centric workflow with the same feeling of the Scalarium gem's CLI:

  • Create OpsWorks stacks, layers and instances via YAML files
  • Assign a stack's custom Chef cookbooks as a custom GitHub repo
  • Create an application corresponding to a GitHub repo
  • Run versioned deployments, rollbacks and one-off recipes

Non-Goals

Dumbwaiter only deals with OpsWorks workflow, excluding:

  • Standing up VPCs
  • Running CloudFormation templates
  • One-off bash-level commands(^) and log tailing

^ Making a cookbook to run one-off commands is totally not unheard-of.

Installation

Add this line to your application's Gemfile:

gem 'dumbwaiter'

And then execute:

$ bundle

Or install it yourself as:

$ gem install dumbwaiter

Usage

Deploy the "cinnamon" branch of the "syrup" application to the "Pancake" stack:

dumbwaiter deploy Pancake syrup cinnamon

List all the layers of the "Pizza" stack:

dumbwaiter layers Pizza

List the deployments on the "Maniacal Checklist" stack:

dumbwaiter list "Maniacal Checklist"

Upload all the custom cookbooks for the "Sweden" stack:

dumbwaiter rechef Sweden

Roll back the "Snowman" stack's "dandruff" application:

dumbwaiter rollback Snowman dandruff

Run the sneakers recipe on all the angsty instances of the "Documentarian" stack:

dumbwaiter run_recipe Documentarian angsty sneakers

List the stacks and apps in your OpsWorks environment:

dumbwaiter stacks

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request