kubernetes-sigs/cluster-api

RuntimeSDK: Surface the usage of deprecated versions of a Runtime Hook

Aperta

#6903 aperta il 12 lug 2022

 (7 commenti) (0 reazioni) (0 assegnatari)Go (1532 fork)auto 404
area/runtime-sdkhelp wantedkind/featurepriority/important-longtermtriage/accepted

Metriche repository

Star
 (4267 stelle)
Metriche merge PR
 (Metriche PR in attesa)

Descrizione

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

Guida contributor