(Created page with "== BOSS == 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 …") |
|||
| Line 22: | Line 22: | ||
</pre> | </pre> | ||
| - | For more complex examples and the syntax reference please check the ruote documentation : http://ruote.rubyforge.org/definitions.html | + | For more complex examples and the syntax reference please check the ruote documentation : http://ruote.rubyforge.org/definitions.html and http://ruote.rubyforge.org/expressions.html |
=== Process store === | === Process store === | ||
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. For more BOSS related general information, see Infrastructure/BOSS.
BOSS Process is the workflow definition. Process defines the business logic that is to be executed.
Processes can be as simple or as complex as needed. They can define a linear execution of participants, have conditionals, loops and concurrency.
Here's a simple example :
process['definition'] = """
Ruote.process_definition :name => 'notification' do
sequence do
notify
end
end
"""
For more complex examples and the syntax reference please check the ruote documentation : http://ruote.rubyforge.org/definitions.html and http://ruote.rubyforge.org/expressions.html
The concept of a process store is helpful when dealing with multiple launchers and processes. It is simply a filesystem hierarchy that maps to a certain logical conditions and aids in the selection of the processes to launch which are stored in text files. The store can be managed using a VCS to track changes and ease deployment to production systems.
Here's an example of such a structure :
.
└── Domain
└── Project
├── EventName1
└── EventName2
The launcher script would traverse the tree matching the event data accordingly until it reaches a file with the event name, then it opens the file and reads the process definition inside.