-
Notifications
You must be signed in to change notification settings - Fork 143
CONSOLE-4765, CONSOLE-4767: Automate console tech preview flag via cluster FeatureSet, Grant console service account watch permissions for ClusterCatalogs #1043
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
Conversation
Implement automatic enabling of console tech preview features when the cluster FeatureSet is configured to TechPreviewNoUpgrade. The console operator now monitors the cluster's FeatureGate resource and sets the TechPreviewEnabled flag in the console-config ConfigMap accordingly. Key changes: - Add FeatureGate informer to console operator - Implement SyncTechPreview function following established patterns - Add TechPreviewEnabled field to ClusterInfo in console config - Update config builder to support tech preview flag - Add comprehensive test coverage 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
@TheRealJon: This pull request references CONSOLE-4765 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.21.0" version, but no target version was set. In response to this:
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 openshift-eng/jira-lifecycle-plugin repository. |
@TheRealJon: This pull request references CONSOLE-4765 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.21.0" version, but no target version was set. This pull request references CONSOLE-4767 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.21.0" version, but no target version was set. In response to this:
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 openshift-eng/jira-lifecycle-plugin repository. |
/hold Test with openshift/console#15477 and openshift/console#15466 |
…sterCatalogs Add get, list, and watch permissions for clustercatalogs in the operators.coreos.com API group to the console ClusterRole. This enables the console backend to monitor ClusterCatalog resources in real-time and provide accurate OperatorHub status updates. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
73466ee
to
4fcebc5
Compare
@TheRealJon: This pull request references CONSOLE-4765 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.21.0" version, but no target version was set. This pull request references CONSOLE-4767 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.21.0" version, but no target version was set. In response to this:
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 openshift-eng/jira-lifecycle-plugin repository. |
/unhold |
QE Approver Docs Approver: PX Approver: |
@TheRealJon: GitHub didn't allow me to assign the following users: jseseCCS. Note that only openshift members with read permissions, repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time. In response to this:
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-sigs/prow repository. |
verified the PR changes with following test scenarios
/verified by @yapei |
@yapei: This PR has been marked as verified by In response to this:
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 openshift-eng/jira-lifecycle-plugin repository. |
/label px-approved |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
back to you @TheRealJon
/label docs-approved |
@TheRealJon: 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-sigs/prow repository. I understand the commands that are listed here. |
verified with latest changes, it looks good
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @TheRealJon , i don't see any big issues with the PR, but I do have few questions that will be worthy for considering. Please see the comments on the PR and let me know how do you think.
techPreviewEnabled, techPreviewErrReason, techPreviewErr := co.SyncTechPreview() | ||
statusHandler.AddConditions(status.HandleProgressingOrDegraded("TechPreviewSync", techPreviewErrReason, techPreviewErr)) | ||
if techPreviewErr != nil { | ||
return statusHandler.FlushAndReturn(techPreviewErr) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems like the error return here will cause the whole sync to terminate and exit. Will that be okay? If the techPreview is not a core console necessity. I saw customLogosErr
in the few lines above is implemented like this way too, so I would assume it should be fine?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, this is a pattern used throughout our operator. It is signaling that there is something wrong with either our operator or the cluster configuration. When our operator is unable to sync something, it should indicate that it is degraded in it's conditions.
} | ||
|
||
techPreviewEnabled = featureGate.Spec.FeatureSet == configv1.TechPreviewNoUpgrade | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we add something like this, to log when there are changes to the TechPreview mode (i.e. being toggled)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We aren't very consistent on this, and more frequently don't do this as far as I can tell.
- validatingwebhookconfigurations | ||
verbs: | ||
- get | ||
- apiGroups: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are there any documentations or note we need to update to reflect this role change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
None that I know of.
/verified by @yapei |
@TheRealJon: This PR has been marked as verified by In response to this:
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 openshift-eng/jira-lifecycle-plugin repository. |
@TheRealJon: This pull request references CONSOLE-4765 which is a valid jira issue. This pull request references CONSOLE-4767 which is a valid jira issue. In response to this:
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 openshift-eng/jira-lifecycle-plugin repository. |
Thanks @TheRealJon for the clarification, and everything makes sense to me. And all the tests are passing without any issues. Therefore, LGTM! /lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: Leo6Leo, TheRealJon 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 |
This PR implements two stories:
CONSOLE-4765: Automate console tech preview flag via cluster FeatureSet
Implement automatic enabling of console tech preview features when the cluster FeatureSet is configured to TechPreviewNoUpgrade. The console operator now monitors the cluster's FeatureGate resource and sets the TechPreviewEnabled flag in the console-config ConfigMap accordingly.
Key changes:
CONSOLE-4767: Grant console service account watch permissions for ClusterCatalogs
Add get, list, and watch permissions for clustercatalogs in the operators.coreos.com
API group to the console ClusterRole. This enables the console backend to monitor
ClusterCatalog resources in real-time and provide accurate OperatorHub status updates.
🤖 Generated with Claude Code