Dead simple task runner. Now with support for Docker.
You can follow the installation guide available here.
For more information on how to get started, please check the wiki.
- [x] Automatic determination of the execution plan
- [x] Parallel jobs execution
- [x] Shell executor
- [x] Docker executor
- [x] Real-time output support for parallel jobs
- [x] Simple configuration DSL based on YAML
- [x] Execution report
- [ ] Web UI for browsing the execution reports (?)
- [x] Enable logging
Create a werk.yml with the following content:
version: "1" description: "Manage Werk with Werk" jobs: main: description: "Build application" executor: local commands: - shards build needs: - lint - test lint: description: "Lint code" executor: docker image: veelenga/ameba commands: - ameba can_fail: true test: description: "Test code" executor: local commands: - crystal spec docs: description: Generate API documentation executor: local commands: - crystal docs - open docs/index.html silent: true
after that, you can run
You can also start individual jobs by specifying a target like this:
werk run lint
Here's another example; in this case, I'm building Werk using itself.
- Fork it (https://github.com/marghidanu/werk/fork)
- Create your feature branch (
git checkout -b my-new-feature)
- Commit your changes (
git commit -am 'Add some feature')
- Push to the branch (
git push origin my-new-feature)
- Create a new Pull Request
- Tudor Marghidanu - creator and maintainer