Skip to content

Draft: Various framework features to allow declarative workflow definition

Hossein Pursultani requested to merge framework-poc into main

What does this MR do?

This MR contains major features of the revised framework to enable declarative workflow definition.

Features

Use error interface for outcome of reconcile loop

All possible outcomes of the reconcile loop, including requeue, are presented as error. The Expand function helps with the translation of the error into the values that Reconcile function returns.

Introduce RuntimeContext

RuntimeContext replaces usage of context.Context. It still implements the same interface and is associated to an existing context, but as a struct its fields are easier to access.

The NewRuntimeContext function strictly checks the required fields and compensates for missing optional fields.

Author's Checklist

For anything in this list which will not be completed, please provide a reason in the MR discussion.

Required

  • Ensure a release milestone is set.
  • MR title and description are up to date, accurate, and descriptive.
  • MR targeting the appropriate branch.
  • MR has a green pipeline on GitLab.com.
  • When ready for review, MR is labeled workflowready for review per the MR workflow.

Expected

  • Test plan indicating conditions for success has been posted and passes.
  • Documentation is created or updated.
  • Tests are added.

Related issues

Related to #66 (closed)

Edited by Hossein Pursultani

Merge request reports

Loading