Orc is a model driven orchestration tool for the deployment of application clusters.
It is written in ruby and currently uses MCollective as its transport for communication with its agents.
You can read more about how it's designed, and problems it's meant to solve in a series of blog posts on our company tech blog:
- Standardized application infrastructure contracts
- part 2 - towards continuous deployment
- Introducing Orc and it's agents
We've also start moving our official deployment contract into the project. It's a work in progress
It is expected to be used with the mcollective agent found here:
and the tatin service here:
FIXME - todo!
-
Fix looping 100 times by failing fast if an instance doesn't start.
-
Factor out WebApp as a type so that we can support database migrations
-
Flatten with deployapp code so that the CLI is the same implementation as Deployapp just with a remote engine, rather than the same logic re-implemented for remote and local cases.
-
Fix to run on ruby 1.9.3
-
Fix namespacing / installation (gem package?)
-
Fix artifact resolver to be pluggable (other backends, and other artifact types)
-
Fix application launcher to be pluggable (able to launch non-java apps)
-
Make participation service pluggable, and implement other examples
-
Fix / cleanup configuration file parsing + defaults so that they're passed in properly from config.