crc-org / crc

CRC is a tool to help you run containers. It manages a local OpenShift 4.x cluster, Microshift or a Podman VM optimized for testing and development purposes
https://crc.dev
Apache License 2.0
1.25k stars 236 forks source link

Add versioning for http API #2543

Open guillaumerose opened 3 years ago

guillaumerose commented 3 years ago

Now that we can remove the binary protocol and the http API is used by both tray, it might be a good idea to introduce versionned API.

The proposition is to copy the current http API under /v1 for instance. The next breaking change could use /v2, and so on.

cfergeau commented 3 years ago

Ideally we'd never break the API, only extend it. However, we already have a plan to rework the current HTTP API, with probably breaking changes, so that will be a good time to also move it under the v1/ umbrella. With our fast release cycle, I don't know how to best approach this though, ideally we'd avoid releasing with /v1 while the API is still being reworked and we cannot commit to it being stable.

cfergeau commented 3 years ago

We're still in the process of breaking the API, so this is still valid.

cfergeau commented 2 years ago

The HTTP API still isn't finalized/frozen, and I don't think we've added versioning to it yet.

gbraad commented 2 years ago

@anjannath how is this solved?