Static Alerts and Providers
darkowlzz opened this issue · 0 comments
Like all the other Flux API objects, Alerts and Providers are backed by reconcilers and report readiness status. But unlike other objects, these reconcilers don't perform any effective action or produce any artifact. They only perform input validation, most of which can be performed using the Kubernetes API validation. Alerts and Providers are essentially data objects, similar to a ConfigMap. The configurations in Alerts and Providers are used by the event handler while processing the events received by notification-controller. For simplicity and ease of maintenance, Alerts and Providers can be made static objects that are not backed by reconcilers and don't report any status. Their existence means that they are ready. There's nothing to check if they are ready to use.
Because this change drops the whole status from Alerts and Providers, it requires a new API version, v1beta3. For migrating the old Alerts and Providers to this new API, temporary migration reconcilers will be needed for each of them, which can be removed in a future release. The loss of readiness and suspend metrics from the reconcilers have been addresses in the recent version of Flux with new monitoring setup that uses kube-state-metrics for collecting those metrics from the objects.
TODOs:
- v1beta3 API that makes Alert and Provider static #540
- Flux CLI update to remove
reconcile
subcommand and show Ready=True inget
subcommand output fluxcd/flux2#4298 - Monitoring config update fluxcd/flux2-monitoring-example#9
- Update website fluxcd/website#1718