Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

specify Featuregates by cluster profile #1788

Merged
merged 5 commits into from Mar 11, 2024

Conversation

deads2k
Copy link
Contributor

@deads2k deads2k commented Mar 8, 2024

This new construction allows us to specify different featuregate enablement for different clusterprofiles. We need to do this for ExternalOIDC.

It's possible that we need additional decision planes in the future (managed versus unmanaged has already come up for NetworkingLiveMigration), but this starts that separation.

I think this can merge independently, but will become far more useful once openshift/cluster-config-operator#411 merges after this.

/assign @JoelSpeed

Copy link
Contributor

openshift-ci bot commented Mar 8, 2024

Hello @deads2k! Some important instructions when contributing to openshift/api:
API design plays an important part in the user experience of OpenShift and as such API PRs are subject to a high level of scrutiny to ensure they follow our best practices. If you haven't already done so, please review the OpenShift API Conventions and ensure that your proposed changes are compliant. Following these conventions will help expedite the api review process for your PR.

@openshift-ci openshift-ci bot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Mar 8, 2024
@openshift-ci openshift-ci bot requested review from bparees and soltysh March 8, 2024 17:21
Copy link
Contributor

openshift-ci bot commented Mar 8, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: deads2k

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

The pull request process is described here

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

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Mar 8, 2024
@deads2k
Copy link
Contributor Author

deads2k commented Mar 8, 2024

well, clearly I broke soemthing.

@deads2k deads2k force-pushed the featuregate-by-cluster-profile branch 2 times, most recently from d1adc84 to bcca5ad Compare March 8, 2024 20:10
@deads2k
Copy link
Contributor Author

deads2k commented Mar 9, 2024

/retest

Copy link
Contributor

@JoelSpeed JoelSpeed left a comment

Choose a reason for hiding this comment

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

I think we may need an updated guide on how to handle a feature gate as a feature gate author once this merges, looks now like the UX has completely changed and the gate level is set at the gate, rather than altogether as previously

ResponsiblePerson: "jhernand",
OwningProduct: ocpSpecific,
}
for clusterProfile, byFeatureSet := range b.statusByClusterProfileByFeatureSet {
Copy link
Contributor

Choose a reason for hiding this comment

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

Might be worth a comment to explain that this is initialised in the constructor so will never be an empty list

reportProblemsToJiraComponent("cloud-provider").
contactPerson("jspeed").
productScope(ocpSpecific).
enableIn(Default, TechPreviewNoUpgrade).
Copy link
Contributor

Choose a reason for hiding this comment

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

Previously, anything that was in default automatically was in TPNU, is this something we have to worry about separately now?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Previously, anything that was in default automatically was in TPNU, is this something we have to worry about separately now?

yes, in thinking about how to enable across many criteria (featuresets + clusterprofiles), disabled everywhere by default was easier to understand.

Copy link
Contributor

Choose a reason for hiding this comment

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

Are there any feature gates in here today that aren't enabling a base level, ie only available in custom?

Copy link
Contributor

Choose a reason for hiding this comment

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

ClusterAPIInstall is one example, assuming nothing panicking on that gate being not registered I think we are good to go

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ClusterAPIInstall is one example, assuming nothing panicking on that gate being not registered I think we are good to go

Seems to be.

Copy link
Contributor

Choose a reason for hiding this comment

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

Is there not an equivalent file that needs to be cleaned up now?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Is there not an equivalent file that needs to be cleaned up now?

Not yet, I think we need to keep the existing files so that hypershift doesn't insta-break

Copy link
Contributor

Choose a reason for hiding this comment

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

Are the old files still being updated in tandem with the new ones?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@deads2k
Copy link
Contributor Author

deads2k commented Mar 11, 2024

/test all

@deads2k
Copy link
Contributor Author

deads2k commented Mar 11, 2024

/retest

@deads2k deads2k force-pushed the featuregate-by-cluster-profile branch from e162141 to a65f80f Compare March 11, 2024 19:37
@deads2k deads2k force-pushed the featuregate-by-cluster-profile branch from a65f80f to 68c8c83 Compare March 11, 2024 20:36
@deads2k
Copy link
Contributor Author

deads2k commented Mar 11, 2024

/override ci/prow/e2e-gcp

This is systemically broken it seems. Given centrality, I'll take the chance.

Copy link
Contributor

openshift-ci bot commented Mar 11, 2024

@deads2k: Overrode contexts on behalf of deads2k: ci/prow/e2e-gcp

In response to this:

/override ci/prow/e2e-gcp

This is systemically broken it seems. Given centrality, I'll take the chance.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@deads2k
Copy link
Contributor Author

deads2k commented Mar 11, 2024

past the previous bootstrapping failures!

@deads2k
Copy link
Contributor Author

deads2k commented Mar 11, 2024

I think we may need an updated guide on how to handle a feature gate as a feature gate author once this merges, looks now like the UX has completely changed and the gate level is set at the gate, rather than altogether as previously

Joel looks largely ok with it. Passed CI, I'm labelling to move forward and will fix IOUs as we go along.

@deads2k deads2k added the lgtm Indicates that a PR is ready to be merged. label Mar 11, 2024
@deads2k
Copy link
Contributor Author

deads2k commented Mar 11, 2024

all green, no merges to head, merging.

@deads2k deads2k merged commit e3b1aac into openshift:master Mar 11, 2024
17 checks passed
@openshift-bot
Copy link

[ART PR BUILD NOTIFIER]

This PR has been included in build ose-cluster-config-api-container-v4.16.0-202403120045.p0.ge3b1aac.assembly.stream.el9 for distgit ose-cluster-config-api.
All builds following this will include this PR.

Copy link
Contributor

openshift-ci bot commented Mar 12, 2024

@deads2k: all tests passed!

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants