This README outlines the details of collaborating on this Ember addon.
A deploy pipeline is a tree of tasks. Each task is an object, provided by another addon (so third parties can extend the capabilities of the pipeline). A task only runs if its preceding task succeeds.
Tasks have hooks:
task.run(config)
- do whatever this task doestask.rollback()
- undo whatever this task didtask.cleanup()
- clean up any backups taken in case of rollback
If a task fails, all preceding tasks will be rolled back in reverse order. If no tasks fail, cleanup()
will be called on every task.
A task is an object, not a singleton, so can be used more than once in a pipeline with different configuration.
Task config can reference data from the output of any preceding task.
task.run()
will either return null or a POJO if it succeeds, or an Error
if it fails. If the POJO includes a message
property this will be logged to the console.
A task addon's README will document the structure of the required config
and its output POJO if it has one.
Blueprints will be available for the most common pipelines (e.g. Luke Melia, S3+Cloudfront). Third party addons can provide new blueprints.
git clone
this repositorynpm install
bower install
ember server
- Visit your app at http://localhost:4200.
ember test
ember test --server
ember build
For more information on using ember-cli, visit http://www.ember-cli.com/.