TOC
BOSS "Build Orchestration Supervision System"
BOSS is a workflow orchestrator, a system that is configured to your workflow requirements and interacts with OBS as well as with external systems to apply the required actions by your workflow.BR
HADRON is a system to orchestrate a CI (Continuous Integration) ecosystem around OBS.
Why
- we need a robust, flexible way of configuring a set of triggers (ex. OBS event or a submit request) and responses
- OBS is a build system, not a general workflow system
- there is need for automation of responses to OBS actions results
- OBS requests are good but not flexible nor extensible
- there's fear of OBS becoming a big black box doing all the magic (maintainability)
- Hermes is there, but it is just taking care of notifications
Requirements
- parallel worflows for parallel software programs
- allows for parallel implementation of the system
- plugins are usable independently
- take away the productization process/logic from the build infrastructure
What is BOSS
- a message bus to collect all triggers and feedback from the different components of the ecosystem
- A queue-manager to handle delivery of incoming messages from all existing systems to the worklow framework
- a work flow framework allowing site-specific workflow definition
Architectecture
OBS event publisher
Message Bus
- a collection of proxies
- each proxy interprets on external system
- a messaging system such as Qpid or DBus and a signal dispatcher
Queue Manager
Work Flow System
- a set of definitions(classes) {objects, conditions, transitions, states} to define the components of the productization process
- separate workflow scripts for the product (can be multiple)
- a collection of plugins
- one plugin per external system
- possible plugins to handle transitions (parsing the requests)