• This repository has been archived on 25/May/2022
  • Stars
    star
    163
  • Rank 231,141 (Top 5 %)
  • Language
    Ruby
  • License
    MIT License
  • Created over 11 years ago
  • Updated about 10 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Setting up Heroku apps made easy.

NOTE: Whilst this possibly still works, you should use app.json from Heroku - it's the offically supported, extended version of this

Heroku.json

heroku.json is configuration management for Heroku, making it super simple to setup (heroku bootstrap) and copy (heroku describe) Heroku apps.

For app creators: Include a heroku.json file in your project root to make running your app on Heroku as simple as heroku bootstrap.

For hackers: Configure and run any app with a heroku.json file on Heroku using a single command.

Installation

  1. Get a Heroku account. If you don't have one already, create an account with Heroku. Your account needs to be verified in order to use any apps, which means adding a credit card.
  2. Install Heroku Toolbelt.
  3. Install heroku.json, by running heroku plugins:install [email protected]:rainforestapp/heroku.json.git from the command line.

Basic Usage

Heroku bootstrap

heroku bootstrap creates an app on Heroku which is ready to run, based on a heroku.json file. After cloning a project with a heroku.json file, you can run heroku bootstrap from the project root to install it onto Heroku. heroku bootstrap creates a new app on Heroku, installs the necessary addons, and configures the environment variables. Tada! One app, ready to go.

Note: Some addons are charged, please refer to the addons website for pricing information.

Heroku describe

heroku describe generates a heroku.json file for your project. This will create a new file called heroku.json in your project folder which describes all of the addons and environment variables that your app depends on, and which looks something like this:

{
  "addons": [
    "redistogo:nano"
  ],
  "env": {
    "TEST": "testing"
  }
}

Note: Although we blacklist some environment variables for you already, please check that nothing private/sensitive is exported before publishing.

Contributors

heroku.json is a Rainforest interview hack day project, created by smathieu, fredsterss and ukd1. [We're hiring](mailto:[email protected]?subject=I want ur jobz)!

TODO

  • Push code to heroku automatically
  • Allow users to run arbitrary commands to allow users to bootstrap the db, generate static files, etc
  • Display pricing information about the addons installed
  • Setup collaborators automatically

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

More Repositories

1

fourchette

DEPRECATED - Your new best friend for isolated testing environments on Heroku.
Ruby
194
star
2

decaf

Coffeescript to ES.next transpiler. Now maintained over at
JavaScript
106
star
3

http-exceptions

Rescue from any http exceptions.
Ruby
94
star
4

react-pusher

A react component for handling pusher subscriptions
JavaScript
52
star
5

rainforest-cli

Command line interface to Rainforest
Go
43
star
6

Docker-Terminal

A terminal for Docker containers in js!
JavaScript
42
star
7

tester-chrome-extension

A Chrome Extension for Rainforest Testers that notifies of new work!
JavaScript
35
star
8

accessibility

Simple chrome extension to notify websites of your accessibility requirements.
JavaScript
16
star
9

destimator

Describe your scikit-learn estimators for posterity!
Python
15
star
10

fourchette-app

Deployable version of the Fourchette core - https://github.com/rainforestapp/fourchette
Ruby
15
star
11

circlemator

A bucket of tricks for automating CircleCI and Github
Ruby
15
star
12

github-chrome

Github for Chrome!
JavaScript
14
star
13

vagrant-camera

Capture Screenshots of your Virtual Box Vagrant VM's
Ruby
10
star
14

doorman

Your personal doorman
CoffeeScript
8
star
15

amazon-s3-redirects

Tiny web-app to help you make Amazon S3 redirects
Ruby
8
star
16

elixir_smtp

Send emails with SMTP and Elixir
Elixir
7
star
17

pronto-commentator

A simple code review tool for Pronto.
Ruby
7
star
18

arp

Retrieve the content of the ARP cache
Ruby
6
star
19

github-action

Easily trigger a Rainforest Run from your GitHub workflows
Shell
5
star
20

queue_classic_plus

QueueClassicPlus is queue_classic with batteries included
Ruby
4
star
21

mc.uploader

A tool to upload markdown files with frontmatter to contentful
JavaScript
4
star
22

get_env

Read values from ENV in a reasonable way
Ruby
4
star
23

omniauth-protect

Protects your Rails app from Omniauth request phase CSRF vulnerability
Ruby
3
star
24

queue_classic_matchers

RSpec matchers for queue_classic
Ruby
2
star
25

Flashlight-vnc

Rainforest's fork of Flashlight-vnc
ActionScript
2
star
26

digestive

A simple email digest of what your team did today on GitHub.
Python
2
star
27

GitSatisfaction

GetSatisfaction using Github Issues
Python
2
star
28

do-this-from-day-0

Stuff you should do from day 0, to minimize technical debt.
1
star
29

rainforest-python

โš ๏ธ Unmaintained โš ๏ธ Rainforest API Python bindings
Python
1
star
30

rainforest-orb

Rainforest QA CircleCI Orb
Ruby
1
star
31

rf-stylez

Styles for Rainforest code
Ruby
1
star
32

seguranca

Auto update an AWS security group to allow traffic from Rainforest QA tests
Go
1
star
33

rf-ourchette

This is our app using Fourchette (https://github.com/rainforestapp/fourchette) to fork our Heroku app on PR creation.
Ruby
1
star
34

rainforest-cordova-plugin

Rainforest plugin for Cordova projects
JavaScript
1
star
35

spcedge

Cutting-Edge Scientific Python Stack on Ubuntu Using Vagrant and Ansible
1
star
36

rainforest_ruby_runtime

Ruby
1
star
37

sample-capybara-test

Ruby
1
star
38

docker-aws-cli

A docker image with Docker and AWS CLI installed (useful for CD pipelines for ECR)
Dockerfile
1
star
39

middleman-async-loader

Generates javascript to asynchronously inject scripts and stylesheets
Ruby
1
star
40

jasmine-basic-part-1-examples

Companion repo for the first part of our intro to Jasmine
JavaScript
1
star