README.md in pushwagner-0.0.1.12 vs README.md in pushwagner-0.0.2.0
- old
+ new
@@ -1,8 +1,96 @@
# Pushwagner [](http://travis-ci.org/oc/pushwagner)
[X] Release early, [ ] Release often
-Build & deploy:
+## Document config
+
+Pushwagner searches for a config in: `./deploy.yml`, `./.pw.yml`, and `./config/deploy.yml`.
+
+Pushwagner is currently extremely opinionated to my usual practises.
+
+### Minimal configuration
+
+````yaml
+# Must set a default path for file uploads
+path_prefix: /var/apps
+
+# Must specify a default environment.
+environments:
+ default:
+ hosts: [test.example.com]
+````
+
+### Maven (M2) repo integration
+
+````yaml
+# required
+path_prefix: /var/apps
+
+maven:
+ repositories:
+ releases: http://repo.example.com/nexus/content/repositories/releases
+ snapshots: http://repo.example.com/nexus/content/repositories/snapshots
+ artifacts:
+ # creates /var/apps/foo.jar by default (assumes foo-webapp is a jar for now)
+ foo:
+ group_id: com.example
+ artifact_id: foo-webapp
+ version: 1.0-SNAPSHOT
+````
+
+### Static file uploads
+
+````yaml
+path_prefix: /var/apps
+
+static:
+ /var/log/foo:
+ - app.log
+ static:
+ - file.txt
+ - folder/
+ /usr/lib/foo:
+ # Globbing support
+ - src/*{[!.git/]*}
+````
+
+### Hooks
+
+before & after, both local & remote.
+
+Sudo support, automatically prompts for passwd, or use: `env PUSHWAGNER_SUDO=sudopasswd`.
+
+````yaml
+hooks:
+ local:
+ before:
+ - mvn package
+ after:
+ - mvn test -Pintegrationtests
+ remote:
+ before:
+ - /usr/sbin/service foo stop
+ after:
+ - /usr/sbin/service foo start
+````
+
+### Environments
+
+````yaml
+environments:
+ test: &test
+ hosts: [test.example.com]
+ user: testuser
+ production: &production
+ hosts: [production.example.com]
+ user: www-data
+ default:
+ <<: *test
+````
+
+
+## Build & deploy:
+
bump lib/pushwagner/version.rb
gem build pushwagner.gemspec
gem push pushwagner-x.x.x.x.gem