weave-gitops icon indicating copy to clipboard operation
weave-gitops copied to clipboard

Flux runtime view should show the version of Flux

Open sympatheticmoose opened this issue 3 years ago • 9 comments

My hypothesis is that more beginner users of Flux will have a greater appreciation of the version of Flux used to install/bootstrap their cluster, rather than the individual controller versions which are installed.

More advanced users may customize this of course, but I believe this would offer a greater "at a glance" value than the controller image versions.

This information is available on the deployments/pods via the label app.kubernetes.io/version=v0.34.0, and is present if the user has performed flux install or flux bootstrap.

I would propose an additional column of Flux Version (to be explicit that it is not the individual controller version) and to display the value of the above label or - if not found.

sympatheticmoose avatar Sep 29 '22 10:09 sympatheticmoose

I think that would be a great addition to the UI, something like "this cluster runs Flux x.y.z". I always wondered whether there was a single source of truth but I figure there isn't so we can just consume one of the Deployment's labels and assume people wouldn't usually mix components from different Flux versions.

makkes avatar Oct 05 '22 14:10 makkes

What about the app.kubernetes.io/version annotation on the flux-system Namespace?

bigkevmcd avatar Oct 12 '22 13:10 bigkevmcd

Would the ns based approach be significantly simpler or more performant @bigkevmcd ? If so I'd agree with Max that its fairly uncommon to mix versions on a single cluster so happy with either for this change. In Enterprise for more of a cluster-centric view on this information, that ns annotation is likely to be useful.

sympatheticmoose avatar Oct 12 '22 13:10 sympatheticmoose

Simpler, it's applied when Flux is installed, rather than having to parse the individual resources.

bigkevmcd avatar Oct 12 '22 13:10 bigkevmcd

Fair - ideally wouldn't want to hardcode to flux-system though

sympatheticmoose avatar Oct 12 '22 13:10 sympatheticmoose

@sympatheticmoose This is true, but you need to know which namespace to look for the components in, with any approach.

bigkevmcd avatar Oct 12 '22 13:10 bigkevmcd

The flux runtime view already handles the controllers being installed in a namespace other than flux-system, if it was just pulling the annotation on the object it already retrieves that felt simple. I guess we currently query for the namespace with app.kubernetes.io/part-of=flux

sympatheticmoose avatar Oct 12 '22 13:10 sympatheticmoose

Fair - ideally wouldn't want to hardcode to flux-system though

Somehow we need to be able to discover the NS that Flux has been installed into, anyway. Not sure how we would do that...

makkes avatar Oct 12 '22 14:10 makkes

The flux runtime view already handles the controllers being installed in a namespace other than flux-system, if it was just pulling the annotation on the object it already retrieves that felt simple. I guess we currently query for the namespace with app.kubernetes.io/part-of=flux

In that case I second Kevin's suggestion.

makkes avatar Oct 12 '22 14:10 makkes