Namespace Tree Example
This namespace tree example shows how to create different workflows in different branches of the namespace tree. The namespace tree is a storage format for workflows that provides a natural mechanism for organizing and naming workflows.
Running the Example
- Create a new workflow called “/my job” in the Designer. You can populate the workflow with any kind of dummy action that will pass verification; for example, a workflow containing a simple timer trigger flowing into a console action. Export the new dummy workflow to the engine.
- Go to the “Dashboard” page of the Operations Console — you’ll see a workflow named “/my job”.
- Create another simple workflow, with a deeper namespace structure. Name the new workflow “/my company/my department/my group/my other job”. Export the workflow.
- If you return to the Operations Console “Dashboard” page now, you will see a workflow called “/my company/my department/my group/my other job /my job”.
- Create another simple workflow and let Flux generate the name for it. To do so, name the workflow simply “/” — any workflow that ends in a “/” will auto-generate a name for the workflow in the specified namespace (root, in this case).
- If you return to the Operations Console “Dashboard” page, you’ll now see:
/<an automatically generated job name> /my company/my department/my group/my other job /my job
- Now create a workflow deeper in the namespace tree and let Flux generate the workflow name. Name the workflow “/my company/”.
If you monitor your workflows now, you will see:
/<an automatically generated job name>
/my company/<an automatically generated job name>
/my company/my department/my group/my other job /my job
/my job
We’ve now seen how Flux stores workflows in the namespace tree! You can provide names for your workflows, or you can allow Flux to generate a unique name for you.
The slash symbol “/” is used to separate branches in the namespace tree. Finally, if you intend to have Flux generate your workflow name, the workflow name you provide to Flux must have a trailing slash symbol.