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
Bug 1777144: packageserver update fails to adopt APIService #1171
Bug 1777144: packageserver update fails to adopt APIService #1171
Conversation
@exdx: This pull request references Bugzilla bug 1777144, which is valid. The bug has been moved to the POST state. 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 kubernetes/test-infra repository. |
Nice work on this @exdx , could you add a rewrite the commit message to include:
|
@exdx could you also merge your commits into a single commit. |
@exdx I saw that the PR description included:
Were you able to test this and prove that the proposed solution will fix the bug? |
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.
Again, nice work!
Thanks for the review @awgreene! Will update to incorporate your great feedback. |
@exdx: This pull request references Bugzilla bug 1777144, which is valid. 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/test-infra repository. |
72e1252
to
e3d7d26
Compare
f7d5f5d
to
ea8a632
Compare
ba409b9
to
77a5e9f
Compare
/retest |
1 similar comment
/retest |
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.
Looking good, mostly some nits.
/hold cancel
It looks like the packageserver owner labels to the api service should already be set when creating the APIService (we were not sure originally if they were being set correctly). That being said, the addition of the cleanup code should still be helpful in resolving the original bug on cluster upgrade? Also the bug was targeting a 4.2.z release for a 4.1 -> 4.2 upgrade, need to check that this all still applies. |
…e to adopt APIService status message. This is a result of ownership mismatches between the packageserver (owner) and the APIService (the owned object). This can be resolved by setting the actual k8s owner references or the label-based references that OLM uses. This commit ensures that ownership references for the APIService are cleaned up on OLM restart and that the olm.owner:packageserver label is set on the corresponding APIService object.
/retest |
2 similar comments
/retest |
/retest |
@exdx: This pull request references Bugzilla bug 1777144, which is valid. 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/test-infra repository. |
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: ecordell, exdx, njhale 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 |
/retest Please review the full test history for this PR and help us cut down flakes. |
3 similar comments
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
@exdx: All pull requests linked via external trackers have merged. Bugzilla bug 1777144 has been moved to the MODIFIED state. 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/test-infra repository. |
/cherry-pick release-4.3 |
@exdx: new pull request created: #1270 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/test-infra repository. |
/cherry-pick release-4.2 |
@exdx: new pull request created: #1271 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/test-infra repository. |
Description of the change:
This PR does 2 things to address the issue where updating the packageserver fails with a
unable to adopt APIService
message. One is add APIService to the cleanup owner references logic that OLM performs on startup to ensure owner references on APIService objects are correct.The other is adding verification on the labels of the APIService object to make sure that the labelolm.owner:packageserver
is set.Motivation for the change:
OLM already checks several types for owner reference mismatches: mainly rbac types like roles and role bindings. Adding the check for APIService owner references will hopefully resolve the issue during cluster upgrade where the packageserver blocks upgrade because it is unable to set the ownership for its api service. The packageserver CSV fails to resolve with
message: unable to adopt APIService
and this causes cluster upgrade to fail. By checking APIService references on startup this could potentially resolve the issue.Owner references are also established by labels on OLM objects, so adding a check forolm.owner:packageserver
should also help.Reviewer Checklist
/docs