BOSS "Build Orchestration Supervision System"
BOSS is a workflow orchestrator, a system that can be configured to automate your workflow requirements; it interacts with the OBS and with people and systems around it to apply your workflow steps.
MeeGo and the MeeGo Community Edition use BOSS to automate processes and to orchestrate a CI (Continuous Integration) ecosystem around OBS.
See also:
Overview
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 workflows for parallel software programmes
- allows for parallel implementation of the system
- plugins are usable independently
- take away the productization process/logic from the build infrastructure
BOSS Implementation and Design
There is a page describing the details of the design and the BOSS code is available.
- a workflow framework allowing site-specific workflow definition
- a message bus and queue-manager to handle delivery of incoming messages from all existing systems to the worklow framework
- a queue-based job distribution system that handles delivery to pools of workers
Resources