-
Story
-
Resolution: Done
-
Undefined
-
None
-
None
-
None
-
False
-
-
False
-
-
As a platform engineer, I would like to reuse shared logic between workflows and have a maintainable smaller main workflow.
The example should refactor the https://github.com/rhdhorchestrator/orchestrator-demo/tree/main/04_software-template_aap_psql into several smaller pieces:
- Workflow 1: Launch software template and watch for its completion.
- Workflow 2: Create namespace on OCP cluster if not already exists
- Workflow 3: Launch AAP job and watch for its completion
- Workflow 4: Watch for Github Action completion (optional? perhaps include in main workflow instead)
- Main workflow: invokes workflow 1, 2, 3, 4 and creates ArgoCD application.
Same notifications should be preserved.
The end goal of the workflow should be the same, implemented differently.
Documentation is required for installing the workflows and for invoking the workflow.
Documentation is required for invoking the micro workflows (1-4) from the main workflow - how to invoke a workflow, where to obtain workflow's spec, how to return output from a micro workflow to the main workflow, how to pass argument on invocation, how to fail main workflow if micro workflow fails, how to watch for micro workflow completion and so on.
Nice to have:
In terms of RBAC, explain how to enable the invocation of main workflow only from RHDH, so micro-workflows will be hidden (by RBAC).
- links to