Project

katana

0.01
Repository is archived
No commit activity in last 3 years
No release in over 3 years
Katana is a wrapper for the Heroku gem to make multi-environment deployments simple.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
 Dependencies

Development

~> 1.0.0
~> 1.5.1
>= 0
~> 2.1.0

Runtime

>= 1.0.0
 Project Readme

Katana

Manage multiple environments on Heroku with ease!

This project was greatly inspired by Capistrano and Heroku San.

Install

Rails 3

Add the following to your Gemfile.

group :development do
  gem "katana"
end

and run

bundle install

You do not need to include the Heroku gem (it gets included as a dependency).

Rails 2 and other Ruby apps

gem install katana

Setup

To use Katana with an existing or future Heroku app, run:

kat init your-app-name

This will create a file in config/katana.yml.

Commands

You can run any Heroku command through Katana. Simply prefix the command with the environment. For instance:

heroku rake db:migrate

becomes

kat staging rake db:migrate

to run it on staging, and

kat production rake db:migrate

to run it on production.

Extras

Katana provides extra, Capistrano-like commands to make deployments easier.

deploy:setup

kat staging deploy:setup

Initializes a git repo (if necessary), removes the "heroku" remote, creates a remote for the environment specified, and runs config:update and stack:update (see below for details).

deploy

kat staging deploy

Pushes the master branch to Heroku, runs your migrations, and restarts the app.

config:update

kat staging config:update

Runs config:add with all the vars listed in your configuration file.

stack:update

kat staging stack:update

Runs stack:migrate with the stack listed in your configuration file.

Help make Katana better!

If you have suggestions or find a bug, create an issue at the top of the page. We also accept pull requests for those feeling adventurous...