If a DataSet is unhealthy, users should be able to prevent any workflow from starting depending on the dataset health status to ensure no bad quality data ends up in production reports/datasets.
Removed this milestone as it is nice to have, and turned out to be a bit more complicated.
Argo workflows doesn't natively support preventing workflows from starting, which leaves us with several options:
Use other Argo Workflows primitives (such as semaphores) to prevent a workflow from starting. This does risk creating future issues with users workflows.
Inject a pre-workflow container that fails if the DataSet healthcheck failed.
Watch all Argo Workflows and prevent them from starting if marked with a certain annotation/other marker.
If a DataSet is unhealthy, users should be able to prevent any workflow from starting depending on the dataset health status to ensure no bad quality data ends up in production reports/datasets.