Skip to content

Add Feature Gates to Manage dra-example-driver Compatibility #91

@bg-chun

Description

@bg-chun

In this issue, we discuss whether we should introduce feature gates for the dra-example-driver.

The core DRA API (Structured Parameters) will become GA in version 1.34 and will be enabled by default. Additionally, DRA features in beta will also start being enabled by default.

The Beta features in version 1.34 related to the dra-example-device are:

  • DRA: Partitionable Devices
  • DRA: Prioritized Alternatives in Device Requests

Even if the dra-example-driver implements these two features, they may not function properly in clusters where these features are not supported or enabled. For instance:

  • Version 1.32 clusters only support core DRA as a beta feature.
  • Version 1.33 clusters have core DRA in beta, while Partitionable Devices and Prioritized Alternatives are alpha features and may not enabled.

Furthermore, more DRA-related features will continue to be added upstream. Users installing the latest dra-example-driver's helm charts and images may encounter errors due to unsupported features in their cluster environments.

Should we introduce a kind of feature gates in the dra-example-driver to manage compatibility across different Kubernetes releases?

Here is a simple example illustrating this concept:

DRA Feature dra-example-driver v0.1.0 dra-example-driver v0.2.0 dra-example-driver v0.3.0
Compatible K8s version v1.32 v1.33 v1.34
Partitionable Devices API Disabled Disabled Enabled
Prioritized Alternatives Disabled Disabled Enabled

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    🔖 Ready

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions