Skip to content

Helpful rake tasks for Heroku for Padrino projects

License

Notifications You must be signed in to change notification settings

adamsiemion/heroku_san

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Heroku San

Helpful rake tasks for Heroku for Padrino projects.

Install

Padrino

Copy lib/tasks/heroku.rake to lib/tasks/ in your project Copy lib/templates/heroku.example.yml to config/ in your project

Configure

In config/heroku.yml you will need add the Heroku apps that you would like to attach to this project. You can generate this file and edit it by running:

rake heroku:create_config

If this is a fresh project, heroku_san can create all the applications for you, and set the RACK_ENV.

rake heroku:all heroku:create heroku:rack_env

Usage

After configuring your Heroku apps you can use rake tasks to control the apps.

rake heroku:production heroku:deploy

A rake task with the shorthand name of each app is now available and adds that server to the list that subsequent commands will execute on. Because this list is additive, you can easily select which servers to run a command on.

rake heroku:demo heroku:staging heroku:restart

A special rake task ‘heroku:all’ is created that causes any further commands to execute on all heroku apps.

Manipulate collaborators on all this project’s apps (prompts for email address):

rake heroku:all heroku:share
rake herkou:all heroku:unshare

Need to add remotes for each app?

rake heroku:all heroku:remotes

A full list of tasks provided (padrino rake -T heroku)

rake heroku:all                   # Select all Heroku apps for later command
rake heroku:console               # Opens a remote console
rake heroku:deploy[commit]        # Pushes the given commit, migrates and restarts (default: HEAD)
rake heroku:deploy:force[commit]  # Force-pushes the given commit, migrates and restarts (default: HEAD)
rake heroku:after_deploy          # Callback after deploys
rake heroku:before_deploy         # Callback before deploys
rake heroku:capture               # Captures a bundle on Heroku
rake heroku:apps                  # Lists configured apps
rake heroku:create                # Creates the Heroku app
rake heroku:create_config         # Creates an example configuration file
rake heroku:gems                  # Generate the Heroku gems manifest from gem dependencies
rake heroku:maintenance           # Enable maintenance mode
rake heroku:maintenance_off       # Disable maintenance mode
rake heroku:push                  # Pushes the given commit (default: HEAD)
rake heroku:push:force            # Force-pushes the given commit (default: HEAD)
rake heroku:remotes               # Add git remotes for all apps in this project
rake heroku:rack_env              # Add proper RACK_ENV to each application
rake heroku:rake[task]            # Runs a rake task remotely
rake heroku:share                 # Adds a collaborator
rake heroku:unshare               # Removes a collaborator
rake heroku:logs                  # Shows the Heroku logs
rake heroku:migrate               # Migrates and restarts remote servers
rake heroku:restart               # Restarts remote servers

Differences between Rails and Padrino heroku san versions

  • Padrino version is compacted into one file (heroku.rake)

  • All tasks are namespaced under heroku.

Homepage

github.com/fastestforward/heroku_san

Issue Tracker

github.com/fastestforward/heroku_san/issues

Contributors

License

License

Copyright © 2009 Elijah Miller <[email protected]>, released under the MIT license.

About

Helpful rake tasks for Heroku for Padrino projects

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%