Permalink
Browse files

tweak readme

  • Loading branch information...
1 parent 3d39a2a commit afa111c9bce44da9d3873942cf66198a10282fb8 @ddollar committed Aug 16, 2012
Showing with 41 additions and 33 deletions.
  1. +41 −33 README.md
View
74 README.md
@@ -1,50 +1,59 @@
# heroku-anvil
-Heroku CLI integration with an [Anvil](https://github.com/ddollar/anvil) build server.
+Alternate Heroku build process.
## Installation
$ heroku plugins:install https://github.com/ddollar/heroku-anvil
## Usage
-#### Build a local directory
+#### Compile an application from a local directory and release it to Heroku
- $ heroku build
-
-#### Build a local directory with a specific buildpack
- $ heroku build -b nodejs
- $ heroku build -b https://github.com/heroku/heroku-buildpack-nodejs.git#master
-
-#### Build a git repository
-
- $ heroku build https://github.com/ddollar/anvil.git
-
-#### Use `-p` to create pipelines
-
- $ heroku release $(heroku build . -p 2>/tmp/log/build.log)
-
-#### Build a tarball using a shell script as a buildpack
-
- $ heroku build http://memcached.googlecode.com/files/memcached-1.4.13.tar.gz \
- -b https://raw.github.com/ddollar/vulcan-recipes/master/memcached.sh
-
-#### Release to Heroku after building
-
- $ heroku build -r -a myapp
+ $ heroku build -r myapp
Building ...
+ Success, slug is https://api.anvilworks.org/slugs/000.tgz
Releasing to myapp.heroku.com... done, v42
-#### Release already-built software
+#### Release a slug to another app
- $ heroku release $slug_url -a myapp
- Releasing to myapp.heroku.com... done, v42
-
-#### Release to another cloud
+ $ heroku release https://api.anvilworks.org/slugs/000.tgz -a myapp-staging
+ Releasing to myapp-staging.heroku.com... done, v42
+
+#### Alternatively, you can build from a public-accessible git repository
- $ heroku cloud shadow
- $ heroku release $slug_url -a myapp
- Releasing to myapp.heroku-shadow.com... done, v42
+ $ heroku build https://github.com/ddollar/anvil.git
+
+#### You can also specify a buildpack
+
+ # specify a buildpack url
+ $ heroku build https://github.com/ddollar/anvil.git -b https://github.com/heroku/heroku-buildpack-nodejs.git
+
+ # specify a buildpack from https://buildkits.heroku.com/
+ $ heroku build https://github.com/ddollar/anvil.git -b heroku/nodejs
+
+#### Use the pipelining feature to build complex deploy workflows
+
+ #!/usr/bin/env bash
+
+ # fail fast
+ set -o errexit
+ set -o pipefail
+
+ # compile a slug of the app
+ slug=$(heroku build https://github.com/my/project.git -p)
+
+ # release the slug to staging
+ heroku release $slug -a myapp-staging
+
+ # run tests using `heroku run`
+ heroku run bin/tests -a myapp-staging
+
+ # test that the app responds via http
+ curl https://myapp-staging.herokuapp.com/test
+
+ # release to production
+ heroku release $slug -a myapp-production
## Advanced Usage
@@ -61,7 +70,6 @@ Heroku CLI integration with an [Anvil](https://github.com/ddollar/anvil) build s
SOURCE will default to "."
-b, --buildpack URL # use a custom buildpack
- -e, --runtime-env # use an app's runtime environment during build
-p, --pipeline # pipe compile output to stderr and only put the slug url on stdout
-r, --release # release the slug to an app

0 comments on commit afa111c

Please sign in to comment.