Conductor is an orchestration engine that runs in the cloud.
Conductor builds are run on Travis CI here.
| Branch | Build | Coverage (coveralls.io) | Coverage (codecov.io) |
|---|---|---|---|
| master | |||
| dev |
http://netflix.github.io/conductor/
Getting Started guide.
Binaries are available from Maven Central and jcenter.
Below are the various artifacts published:
| Artifact | Description |
|---|---|
| conductor-common | Common models used by various conductor modules |
| conductor-core | Core Conductor module |
| conductor-redis-persistence | Persistence using Redis/Dynomite |
| conductor-es2-persistence | Indexing using Elasticsearch 2.X |
| conductor-es5-persistence | Indexing using Elasticsearch 5.X |
| conductor-jersey | Jersey JAX-RS resources for the core services |
| conductor-ui | node.js based UI for Conductor |
| conductor-contribs | Optional contrib package that holds extended workflow tasks and support for SQS |
| conductor-client | Java client for Conductor that includes helpers for running a worker tasks |
| conductor-server | Self contained Jetty server |
| conductor-test-harness | Used for building test harness and an in-memory kitchensink demo |
To build the server, use the following dependencies in your classpath:
- conductor-common
- conductor-core
- conductor-jersey
- conductor-redis-persistence (unless using your own persistence module)
- conductor-es2-persistence or conductor-es5-persistence (unless using your own index module)
- conductor-contribs (optional)
Add the following packages to classpath scan:
com.netflix.conductor.server.resources
com.netflix.workflow.contribs.queueConductor relies on the guice (4.0+) for the dependency injection. Persistence has a guice module to wire up appropriate interfaces:
com.netflix.conductor.dao.RedisWorkflowModule- The default persistence used is Dynomite
- For queues, we are relying on dyno-queues
- The indexing backend is Elasticsearch (2.+)
- JDK 1.8+
- Servlet Container
Conductor is maintained by Media Workflow Infrastructure team at Netflix. Use github issue tracking for any support request.
