Description of problem: Per the doc: https://docs.openshift.com/container-platform/4.7/nodes/clusters/nodes-cluster-enabling-features.html, TechPreviewNoUpgrade should cannot be undone, but in our test, we found it can be undone. Version-Release number of selected component (if applicable): 4.8.0 nightly build How reproducible: Always. Steps to Reproduce: 1. Setup an OCPcluster on AWS 2. Ran the cmd to enable some featuregates: oc patch featuregate cluster -p '{"spec": {"featureSet": "TechPreviewNoUpgrade"}}' --type merge 3. Checked the kube-controller-manager, kube-apiserver, kube-scheduler COs and kubelet restarted with the exepected feature gates. 4. Ran the "oc edit featuregate cluster" cmd, then set the spec={} 5. Check the kube-controller-manager, kube-apiserver, kube-scheduler COs resarted without the feature gates defined in the `TechPreviewNoUpgrade` featureset, but kubelet didn't restart and change the feature gates config. Actual results: For storage CSI Migration feature, it needs the configuration is changed in the control plane COs and kubelet at the same time to enable or disable this feature. But when we update the spec={}, for the kubelet didn't change the config, so the storage CSI Migration did a partially disable. Expected results: Not support `TechPreviewNoUpgrade` featureset undo. Additional info:
Hi Stefan, Could you explain more why it's not a bug? We have 2 features might about this. One is CSI Migration, when the featureset is enabled and the featuregate.spec is set to {}, then the CSI Migration feature is not in the correct status. Another is Azure Disk CSI Driver, when the featureset is enabled and the featuregate.spec is set to {}, CSO(Cluster Storage Operator) will no unavailable. For the second one we tracked with bug: https://bugzilla.redhat.com/show_bug.cgi?id=1952826
@Qin: you were absolute right. It's a bug and the fix was simple.
Stefan, thanks for checking again.
$ oc get clusterversion NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.8.0-0.nightly-2021-04-30-201824 True False 5h28m Cluster version is 4.8.0-0.nightly-2021-04-30-201824 Ran the cmd to enable some featuregates: oc patch featuregate cluster -p '{"spec": {"featureSet": "TechPreviewNoUpgrade"}}' --type merge After the kube-controller-manager, kube-apiserver, kube-scheduler COs and kubelet restarted with the exepected feature gates, tried to undone this operation, ran the "oc edit featuregate cluster" cmd, then set the spec={}, $ oc edit featuregate cluster error: featuregates.config.openshift.io "cluster" is invalid A copy of your changes has been stored to "/tmp/oc-edit-l4me0.yaml" error: Edit cancelled, no valid changes were saved. $ oc patch featuregate cluster -p '{"spec": {}}' --type merge featuregate.config.openshift.io/cluster patched $ oc get featuregate cluster -o yaml | grep -A1 ^spec spec: featureSet: TechPreviewNoUpgrade No changes after applied the patch, the `TechPreviewNoUpgrade` featureset cannot be undone and checked the kube-controller-manager, kube-apiserver, kube-scheduler COs and kubelet didn't restart, so move the bug VERIFIED.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Moderate: OpenShift Container Platform 4.8.2 bug fix and security update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2021:2438