-
Notifications
You must be signed in to change notification settings - Fork 35
OCPBUGS-61890: 🐛 CRD upgrade safety fixes and ratcheting (#2123) #527
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
OCPBUGS-61890: 🐛 CRD upgrade safety fixes and ratcheting (#2123) #527
Conversation
@jianzhangbjz: This pull request references Jira Issue OCPBUGS-61890, which is invalid:
Comment The bug has been updated to refer to the pull request using the external bug tracker. 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. |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jianzhangbjz 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 |
/jira refresh |
@jianzhangbjz: This pull request references Jira Issue OCPBUGS-61890, which is invalid:
Comment 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. |
/jira refresh |
@jianzhangbjz: This pull request references Jira Issue OCPBUGS-61890, which is valid. The bug has been moved to the POST state. 7 validation(s) were run on this bug
Requesting review from QA contact: 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. |
b9a5a99
to
afe8c54
Compare
* move crd upgrade safety testdata into crdupgradesafety package Signed-off-by: Joe Lanford <joe.lanford@gmail.com> * fix: bump crdify to fix bugs and regressions regression fixes: 1. correctly handle processing of properties that are OpenAPI items 2. allow enums to have values added. bug fix: crdify's served version validator was updated to actually compare the old CRD with the new CRD so that any issues identified in the old CRD do not continue to be reported when performing comparisons between served versions of the new CRD. This effectively allows issues in the served version validations to be acknowledged once when they are introduced, but then those issues are essentially grandfathered in such that they do not have to be acknowledged again in the future. This issue was actually identified in a case where an operator upgrade was stopped by the CRD upgrade check despite there being no changes whatsoever to the CRD. The "old" and "new" CRDs contained the exact same issues, but since crdify was looking exclusively at the "new" CRD, it found those issues and reported them. --------- Signed-off-by: Joe Lanford <joe.lanford@gmail.com>
afe8c54
to
e1be79b
Compare
/lgtm |
/label backport-risk-assessed |
/label staff-eng-approved 4.20.0-rc3 was promoted to 4.20.0, so less of a concern about risk of merging 4.20 code at this point. |
Test passed. 1. Build an OCP cluster with this unmerged PR via the cluster-bot
launch 4.20,openshift/operator-framework-operator-controller#527 aws
jiazha-mac:~ jiazha$ oc get clusterversion
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS
version 4.20.0-0-2025-10-17-033102-test-ci-ln-79q39gb-latest True False 4m43s Cluster version is 4.20.0-0-2025-10-17-033102-test-ci-ln-79q39gb-latest
2. Run test case 83026
jiazha-mac:openshift-tests-private jiazha$ ./bin/extended-platform-tests run all --dry-run|grep 83026|./bin/extended-platform-tests run -f -
I1017 12:27:22.073909 42372 test.go:180] Found authentication type used:
I1017 12:27:22.074686 42372 test_context.go:566] The --provider flag is not set. Continuing as if --provider=skeleton had been used.
I1017 12:27:25.292663 42372 client.go:1023] Running 'oc --kubeconfig=/Users/jiazha/bot-kubeconfig get node -l node-role.kubernetes.io/worker -o=jsonpath={.items[*].metadata.name}'
I1017 12:27:27.237913 42372 api.go:57] EnvIsKubernetesCluster = no, start monitoring ClusterOperators and ClusterVersions
started: (0/1/1) "[sig-operators] OLM v1 oprun should Author:jiazha-ROSA-OSD_CCS-ARO-NonHyperShiftHOST-ConnectedOnly-High-83026-clusterextension updates sometimes failed with the following error from the CRDUpgradeCheck resource: unknown change, refusing to determine that change is safe."
...
...
I1017 12:29:30.562860 42380 framework.go:376] Found DeleteNamespace=false, skipping namespace deletion!
• SUCCESS! 1m56.498186792s
passed: (2m3s) 2025-10-17T04:29:30 "[sig-operators] OLM v1 oprun should Author:jiazha-ROSA-OSD_CCS-ARO-NonHyperShiftHOST-ConnectedOnly-High-83026-clusterextension updates sometimes failed with the following error from the CRDUpgradeCheck resource: unknown change, refusing to determine that change is safe."
1 pass, 0 skip (2m3s) /verified by @jianzhangbjz |
@jianzhangbjz: 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. |
3e2401f
into
openshift:release-4.20
@jianzhangbjz: Jira Issue Verification Checks: Jira Issue OCPBUGS-61890 Jira Issue OCPBUGS-61890 has been moved to the MODIFIED state and will move to the VERIFIED state when the change is available in an accepted nightly payload. 🕓 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. |
/cherry-pick release-4.19 |
@jianzhangbjz: #527 failed to apply on top of branch "release-4.19":
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. |
Manually cherry-pick operator-framework/operator-controller@236319b to release-4.20