Skip to content

feat: add scaffolding for feature gates#3102

Merged
google-oss-prow[bot] merged 6 commits intokubeflow:masterfrom
robert-bell:feature-gate-scaffolding
Jan 23, 2026
Merged

feat: add scaffolding for feature gates#3102
google-oss-prow[bot] merged 6 commits intokubeflow:masterfrom
robert-bell:feature-gate-scaffolding

Conversation

@robert-bell
Copy link
Contributor

What this PR does / why we need it:

This PR adds scaffolding for feature gates, following the approach used in jobset operator following kubernetes-sigs/jobset#557.

This is prep work ready for implementing the progress tracking feature in #2905 which will be implemented behind a feature gate.

Which issue(s) this PR fixes (optional, in Fixes #<issue number>, #<issue number>, ... format, will close the issue(s) when PR gets merged):
Fixes #

Checklist:

  • Docs included if any changes are user facing

@robert-bell
Copy link
Contributor Author

/assign @andreyvelich @tenzen-y

Here's a small PR that adds scaffolding for feature gates. I've followed the approach used by jobset. Please can you take a look when you get a chance.

Copy link
Member

@andreyvelich andreyvelich left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this @robert-bell!
lgtm, just a few small nits.
/assign @tenzen-y @astefanutti

go.mod Outdated
golang.org/x/crypto v0.47.0
k8s.io/api v0.34.3
k8s.io/apimachinery v0.34.3
k8s.io/apiserver v0.34.1
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's keep the same version

Suggested change
k8s.io/apiserver v0.34.1
k8s.io/apiserver v0.34.3

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done. Please take a look.

)

// TODO(robert-bell): enable as part of #2779
//const (
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've added a comment. I've put myself as owner, but I'm happy to change that that if you'd prefer the owner to be a maintainer.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@robert-bell Please can you create PR to add yourself to the Kubeflow GitHub org: https://github.com/kubeflow/internal-acls?tab=readme-ov-file#joining-the-kubeflow-github-organization?
I am happy to support it!

@coveralls
Copy link

coveralls commented Jan 23, 2026

Pull Request Test Coverage Report for Build 21284007848

Details

  • 0 of 12 (0.0%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage decreased (-0.3%) to 51.131%

Changes Missing Coverage Covered Lines Changed/Added Lines %
pkg/features/features.go 0 12 0.0%
Totals Coverage Status
Change from base Build 21278865629: -0.3%
Covered Lines: 1243
Relevant Lines: 2431

💛 - Coveralls

Signed-off-by: Rob Bell <robell@redhat.com>
Signed-off-by: Rob Bell <robell@redhat.com>
Signed-off-by: Rob Bell <robell@redhat.com>
Signed-off-by: Rob Bell <robell@redhat.com>
Signed-off-by: Rob Bell <robell@redhat.com>
@robert-bell robert-bell force-pushed the feature-gate-scaffolding branch from 0457bb2 to 7f10b29 Compare January 23, 2026 09:09
featuregatetesting "k8s.io/component-base/featuregate/testing"
)

// TODO(robert-bell): enable as part of #2779
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd suggest to add that with the actual implementation of 2779.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

// Entries are separated from each other with blank lines to avoid sweeping gofmt changes
// when adding or removing one entry.
var defaultFeatureGates = map[featuregate.Feature]featuregate.FeatureSpec{
// TODO(robert-bell): enable as part of #2779
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dito: I'd suggest to add that with the actual implementation of 2779.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

Signed-off-by: Rob Bell <robell@redhat.com>
@astefanutti
Copy link
Contributor

Thanks @robert-bell!

/lgtm

@tenzen-y in case you have any comments before approving.

@google-oss-prow google-oss-prow bot added the lgtm label Jan 23, 2026
Copy link
Member

@andreyvelich andreyvelich left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm
/approve

@google-oss-prow
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: andreyvelich

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@google-oss-prow google-oss-prow bot merged commit 4011353 into kubeflow:master Jan 23, 2026
29 checks passed
@google-oss-prow google-oss-prow bot added this to the v2.2 milestone Jan 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants