numaflow icon indicating copy to clipboard operation
numaflow copied to clipboard

CRDs versioning

Open Koalk opened this issue 4 months ago • 4 comments

Summary

If you have multiple namespaced installation of numaflow in the same cluster (i.e. production vs test). Bumping one of the installations to the latest version will bump the CRDs on the other since CRDs are not "namespaceable" themselves.

CRDs should instead use versioning when there are changes on them in a numaflow version bump.

Use Cases

To manage multiple numaflow installations in the same cluster and only want to bump one of them.


Message from the maintainers:

If you wish to see this enhancement implemented please add a 👍 reaction to this issue! We often sort issues this way to know what to prioritize.

Koalk avatar Aug 05 '25 10:08 Koalk

Numaflow supports namespace level installation.

vigith avatar Aug 05 '25 15:08 vigith

The versioning in k8s has its special meaning, it's not supposed to be used for namespaced installation separation. We don't have a plan now to bump up the version v1alpha1. The namespaced scope in CRD definition is not for the purpose of only defining the CRD for one particular namespace, but indicate the CR object is namespace scoped or cluster scoped - think about the difference of scope of Node and Deployment.

whynowy avatar Aug 05 '25 16:08 whynowy

Is not about namespace installation separation is about breaking changes in the CRDs across different versions of the numaflow installation. If you have two numaflow applications installed in the cluster with different namespaces, you will break the one in the lower version because it will pickup the new CRDs since they themselves cannot be namespaced. If there is a breaking change in the CRDs across versions, I would expect some level of versioning on them to handle this kind of situations

Koalk avatar Aug 09 '25 14:08 Koalk

We install the minimal CRD at the cluster level. Namespaces get the full spec. This way we can have different versions in different namespaces.

vigith avatar Aug 09 '25 22:08 vigith