-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
Update ValidatingWebhook for Ingress to support --dry-run=server #5752
Update ValidatingWebhook for Ingress to support --dry-run=server #5752
Conversation
Hi @towolf. Thanks for your PR. I'm waiting for a kubernetes member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. 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. |
@tjamet since you introduced this feature in #3802, could you review this PR in terms of the information from https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#side-effects |
92e4966
to
be5c29d
Compare
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.
Can you please update the e2e tests in https://github.com/kubernetes/ingress-nginx/tree/master/charts/ingress-nginx/ci or https://github.com/kubernetes/ingress-nginx/tree/master/internal/admission/controller so that we can test the dry-run flag?
@cmluciano I looked at the tests and I'm not sure how the tests would capture the scenario, since that is taking place entirely outside of the controller on the side of Kubernetes. Unless we want to handle the case of a dry-run differently from the regular case. And from my cursory glance at how the admission works, this should happen just the same in the dry and non-dry case. Or maybe I failed to recognize what we should test here and how? |
/ok-to-test |
/lgtm |
@towolf thanks! |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: aledbf, towolf 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 |
What this PR does / why we need it:
Since the feature server dry run was introduced in Kubernetes, webhooks that potentially have "side-effects" in their operation are not executed during a "dry run". All webhooks have to declare that they do not trigger side effects behind the scenes to be able to run. Otherwise this error is returned:
Error from server (BadRequest): admission webhook "validate.nginx.ingress.kubernetes.io" does not support dry run
I declare no side effects but would like to confirm with the author of the webhook, if this is actually the case.
Types of changes
Which issue/s this PR fixes
fixes #4767
How Has This Been Tested?
Edited my own
ValidatingWebhookConfiguration
locally to readsideEffects: None
and the error disappears.Checklist: