spinkube / spin-operator

Spin Operator is a Kubernetes operator that empowers platform engineers to deploy Spin applications as custom resources to their Kubernetes clusters
https://www.spinkube.dev/docs/overview/
Other
217 stars 23 forks source link

Feedback on breaking API changes #352

Open jandubois opened 6 days ago

jandubois commented 6 days ago

This should be a discussion item, but this repo doesn't have discussions enabled...

I understand that spinkube is pre-1.0 and breaking changes should be expected. But I still think they should be avoided when possible with reasonable effort (and I may be wrong about reasonable effort here).

I think the following sequence of events would have been much smoother for the users of spinkube:

[^1]: Edit: ok, not automatically; users would still need to delete the old instances manually unless special migration code was added to the plugin.

This approach would also eliminate the current issue that you have to upgrade the operator and the spin plugin at the same time, which can be a problem if the operator installation is managed centrally and not by the user themselves.

If you do breaking changes again, especially after 1.0, please consider if such a migration path is possible.

calebschoepp commented 2 days ago

Thanks for the feedback @jandubois. We certainly want to avoid making breaking changes going forward. Certainly if we make a breaking change post 1.0 we will offer an easier migration story like you have laid out above.