contour icon indicating copy to clipboard operation
contour copied to clipboard

Spike to investigate running beta versions of HTTPProxy API

Open stevesloka opened this issue 5 years ago • 4 comments
trafficstars

I'm curious about the extra overhead to maintain beta versions of the api. Sometimes I think we want to implement something, but don't always get the API spec right.

Looking back after some time and user input, we might want to change what we originally thought.

This issue is to determine the overhead of having beta versions of the api spec and how we could promote / update through various release cycles.

stevesloka avatar Dec 18 '19 01:12 stevesloka

Practically, I think this will be using the newer CRD functionality available post 1.16. Once we use the CRD GA spec, there are options for setting the storage version for CRDs that let you have people apply the v1beta1 and it gets stored as v1beta2 (for example). If you ask for v1beta1, you get v1beta1, and if you ask for v1beta2, you get that.

It does require a conversion webhook though, I think. I haven't really looked into it very much.

youngnick avatar Jan 14 '20 03:01 youngnick

See also the discussion in #2099. If you don't preserve multiple versions, then I don't think clusters can be automatically upgraded. You'd have to manually delete the old CRD versions before applying the new ones.

But in practice, I don't think that we need to worry too much until HTTPProxy v2 :)

jpeach avatar Jan 14 '20 04:01 jpeach

But in practice, I don't think that we need to worry too much until HTTPProxy v2 :)

My thinking of this spike is to allow us to introduce alpha/beta api designs. For example, it might be nice to put the new status design into an alpha group and allow users to buy into it. We can play around with how the design works in practice, tweak it and then release when we have more data.

The purpose of this spike was to determine how much overhead this might add to our release/upgrade / development process.

stevesloka avatar Jan 14 '20 18:01 stevesloka

The Contour project currently lacks enough contributors to adequately respond to all Issues.

This bot triages Issues according to the following rules:

  • After 60d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, the Issue is closed

You can:

  • Mark this Issue as fresh by commenting
  • Close this Issue
  • Offer to help out with triage

Please send feedback to the #contour channel in the Kubernetes Slack

github-actions[bot] avatar Apr 17 '24 00:04 github-actions[bot]

The Contour project currently lacks enough contributors to adequately respond to all Issues.

This bot triages Issues according to the following rules:

  • After 60d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, the Issue is closed

You can:

  • Mark this Issue as fresh by commenting
  • Close this Issue
  • Offer to help out with triage

Please send feedback to the #contour channel in the Kubernetes Slack

github-actions[bot] avatar May 22 '24 00:05 github-actions[bot]