console
console copied to clipboard
CONSOLE-3287, CONSOLE-3288: OLM Pages work when copied CSVs are disabled
- Add copied csvs disabled flag to bridge command and server server config
- Forward copied csvs disabled flag to frontend through js globals
- On the installed operators page, list CSVs from 'openshift' namespace when copied csvs are disabled
- On the CSV details page, create operand, and operand details pages:
- use CSV from 'openshift' namespace when copied csvs are disabled, and no CSV is found in the current active namespace
QE Approver /assign @yapei
Docs Approver: /assign @opayne1
PX Approver: /assign @RickJWagner
@spadgett @jhadvig @zherman0 PTAL
/label px-approved
/label docs-approved
/retest
/retest
@TheRealJon I have a questions about this feature Will command “windows.SERVER_Flag.copiedCSVsDisabled = true” take effect on console? I mean when I use this command on the console of browser, seems the disableCopiedCSVs: true will not take effect on OLMConfig file
/retest
/retest
Will command “windows.SERVER_Flag.copiedCSVsDisabled = true” take effect on console? I mean when I use this command on the console of browser, seems the disableCopiedCSVs: true will not take effect on OLMConfig file
@XiyunZhao no this cant be set in the browser's console, you need to set it either on the OLM Config or as a envar when running bridge server locally.
export DISABLED_COPIED_CSVS=true
/retest
/retest
/retest
@TheRealJon, could you help to check, when.SERVER_FLAGS.copiedCSVsDisabled is set to true, the operator installed on "openshift" namespace will show duplicate data on the Installed operator page
Open Bug: https://issues.redhat.com/browse/OCPBUGS-2733 for tracking
/label tide/merge-method-squash
/retest
/lgtm
/hold cancel
/label qe-approved
This PR has been tested on a private build. All below checkpoint is passed
- New flag window.SERVER_FLAGS.copiedCSVsDisabled is added and can be checked on console of browser
- For the administrator When the Flag is true, which means the user does not allow CSV copied in the cluster
For the operator installed in "All namespace" the operator will list in the Installed operator page only when the user selects project to "All namespace" or "openshift" the CSV file on other projects would be removed, user cannot use command eg: "oc get csv -n default" to get any information about the operator installed in "All namespaces"
- For the normal user When the Flag is true, which means the user does not allow CSV copied in the cluster
For the operator is available in "All namespace" CSV will be removed, user cannot use the command **oc get csv** to get information about the operator The operator could not be found on the Installed operator page For the operator is installed in "openshift" namespace If the normal user does not have authority over this particular namespace The operator and its CSV file could not list on the Installed operator page and shown by using the command if the normal user has the permission The operator could be listed on the Installed operator page Its CSV file could be found by using command "oc get csv" User can check the CSV details, operand details and create operand pages will only use the CSV from the openshif namespace For the operator is installed in other namespaces No change, follow the basic behavior
Hi @XiyunZhao. I had a few things to follow up about your above comment. This PR needs to be tested using cluster-bot so that the changes are deployed on a cluster and tested end-to-end. Testing locally doesn't ensure that the console backend is consuming the clusterInfo.copiedCSVsDisabled
property from the console config.
Secondly, I think there might be a bit of a misunderstanding about the scope of these changes. The flag we are setting does not actually disable copied CSVs on the cluster. That is a separate feature which is a part of the OLM configuration. These changes only effect console behavior. It has no effect on how OLM works on the cluster, and therefore no effect on any CLI commands. There should be no testing of oc commands involved with this PR.
Lastly, I think the expected behaviors of the UI are not quite accurately reflected here. These changes should be almost transparent to end users. When copied CSVs are disabled, both admin and normal users should be able to see globally installed operators from ANY SELECTED NAMESPACE. For normal users, this comes with the caveat that they have permission to view installed operators in the selected namespace, which is something that needs to be configured through RBAC.
So essentially the tests for this PR should be regression tests to ensure that the Installed Operators, CSV details, operand detail, and create operand pages all work as expected when copied csvs are disabled in the OLM config, and the copiedCSVsDisabled flag is set in the console config. Please let me know if there is any more clarification needed.
Hi @XiyunZhao. I had a few things to follow up about your above comment. This PR needs to be tested using cluster-bot so that the changes are deployed on a cluster and tested end-to-end. Testing locally doesn't ensure that the console backend is consuming the
clusterInfo.copiedCSVsDisabled
property from the console config.Secondly, I think there might be a bit of a misunderstanding about the scope of these changes. The flag we are setting does not actually disable copied CSVs on the cluster. That is a separate feature which is a part of the OLM configuration. These changes only effect console behavior. It has no effect on how OLM works on the cluster, and therefore no effect on any CLI commands. There should be no testing of oc commands involved with this PR.
Lastly, I think the expected behaviors of the UI are not quite accurately reflected here. These changes should be almost transparent to end users. When copied CSVs are disabled, both admin and normal users should be able to see globally installed operators from ANY SELECTED NAMESPACE. For normal users, this comes with the caveat that they have permission to view installed operators in the selected namespace, which is something that needs to be configured through RBAC.
So essentially the tests for this PR should be regression tests to ensure that the Installed Operators, CSV details, operand detail, and create operand pages all work as expected when copied csvs are disabled in the OLM config, and the copiedCSVsDisabled flag is set in the console config. Please let me know if there is any more clarification needed.
All of this being said, I think it's important that this gets into 4.12. Our unit and e2e tests are passing and I also did testing as I developed the feature, so if there is anything that was missed, we can open bugs and backport fixes.
/retest
/remove-label qe-approved
@TheRealJon Thanks for your comments. This PR has been retested, and no issue found, give the approved label, the description and test case has been updated /label qe-approved
/retest /lgtm
[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: jhadvig, TheRealJon, zherman0
The full list of commands accepted by this bot can be found here.
The pull request process is described here
- ~~cmd/OWNERS~~ [TheRealJon,jhadvig]
- ~~frontend/OWNERS~~ [TheRealJon,jhadvig]
- ~~pkg/OWNERS~~ [TheRealJon,jhadvig]
Approvers can indicate their approval by writing /approve
in a comment
Approvers can cancel approval by writing /approve cancel
in a comment
/retest
/retest
/retest