kubernetes-sigs / kubernetes-sigs/cluster-api
RuntimeSDK: Surface the usage of deprecated versions of a Runtime Hook
- Dominant language
- Go
- Stars
- 4.3k
- Forks
- 1.6k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 113
Description
**User Story**
As an operator I would like to have a way to observe that a Runtime Extension uses a deprecated Runtime Hook version.
**Detailed Description**
Background information:
* Runtime Hooks can have multiple apiVersions just like regular API types
* When creating a new apiVersion of a Runtime Hook we can deprecate the old version
* Runtime Extension authors can still use the old version of the Runtime Hook, but they are expected to migrate to the new apiVersion before the old one is removed
Goal of this issue is to surface that an old Runtime Hook version is used, so that Runtime Extension authors are made aware of that they should migrate to using the new Runtime Hook version.
**Anything else you would like to add:**
Some ideas:
* We could surface it as condition on the ExtensionConfig during discovery
* We could potentially surface it as:
* a warning via a ValidatingWebhook on ExtensionConfig
* TBD how this would work given that we only have the information in status after discovery
* a well known HTTP header
* TBD on which HTTP call and how that would be noticed
Please note, we can already implement this, but it can only be used by users once we have multiple Runtime Hook versions.
/kind feature
Contributor guide
Research direction
Start by reading the RuntimeSDK discovery flow and how ExtensionConfig status is populated. Compare the proposed condition during discovery with the ValidatingWebhook and HTTP-header alternatives. Done means deprecated Runtime Hook usage is surfaced clearly enough for Runtime Extension authors to know that migration is needed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- api
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100