https://github.com/hyperoslo/heroku-deploy
Deploying your applications to Heroku should never involve manually chaining shell commands together
https://github.com/hyperoslo/heroku-deploy
Last synced: 10 months ago
JSON representation
Deploying your applications to Heroku should never involve manually chaining shell commands together
- Host: GitHub
- URL: https://github.com/hyperoslo/heroku-deploy
- Owner: hyperoslo
- License: other
- Created: 2014-03-15T22:00:22.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2017-06-18T19:47:16.000Z (almost 9 years ago)
- Last Synced: 2025-06-03T03:11:35.625Z (about 1 year ago)
- Language: Ruby
- Size: 25.4 KB
- Stars: 10
- Watchers: 14
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Heroku Deploy
[](https://codeclimate.com/github/hyperoslo/heroku-deploy)
Deploying your applications to Heroku should never involve manually chaining shell commands together.
**Supported Ruby versions: 1.9.3 or higher**
Licensed under the **MIT** license, see LICENSE for more information.

## Installation
This is a Heroku client plugin and as such requires the [Heroku Toolbelt](https://toolbelt.heroku.com/) to be installed.
```shell
heroku plugins:install https://github.com/hyperoslo/heroku-deploy.git
```
## Usage
By default, the `master` branch will be deployed to your Heroku app:
```shell
heroku deploy
```
A different branch may be provided:
```shell
heroku deploy feature/plus-ux
```
If you have multiple apps, you may specify either app or remote:
```shell
heroku deploy -a hyper-rocks-staging
heroku deploy -r staging
```
## Features
* Supports multiple languages and frameworks using deploy packs (see below)
* Streams output from subcommands
* Relies on UNIX exit statuses to abort deployment early in case of failure
## Deploy Packs
A deploy pack represents a set of deployment instructions for a given language or framework. These instructions could range from turning on maintenance mode, scaling processes to scheduling backups.
At present, Ruby on Rails, Django and Symfony are supported. Deploying any other applications? Please open a pull request!
### [Ruby on Rails](https://github.com/hyperoslo/heroku-deploy/blob/master/lib/heroku/command/deploy/pack/rails.rb)
* Code deployment
* Maintenance mode on
* Database migrations
* Restart dynos
* Ensures all processes are in sync after potential database migrations
* Maintenance mode off
### [Django](https://github.com/hyperoslo/heroku-deploy/blob/master/lib/heroku/command/deploy/pack/django.rb)
* Code deployment
* Maintenance mode on
* Database migrations
* Restart dynos
* Ensures all processes are in sync after potential database migrations
* Maintenance mode off
### [Symfony](https://github.com/hyperoslo/heroku-deploy/blob/master/lib/heroku/command/deploy/pack/symfony.rb)
* Code deployment
* Maintenance mode on
* Database migrations
* Restart dynos
* Ensures all processes are in sync after potential database migrations
* Maintenance mode off
## 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 pull request
## Credits
Hyper made this. We're a digital communications agency with a passion for good code,
and if you're using this plugin we probably want to hire you.