-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Add unary gRPC support in APPolicy #1411
Conversation
@rafwegv We now have some automation for changelog generation: https://github.com/nginxinc/kubernetes-ingress/actions/workflows/release-drafter.yml The resulting changelog draft should be visible to you: https://github.com/nginxinc/kubernetes-ingress/releases I think it would be good if you could rename the PR to note that this change relates to AppProtect. |
@@ -1058,6 +1199,8 @@ spec: | |||
urls: | |||
items: | |||
properties: | |||
$action: |
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.
just to double check, is $
in front of the action is correct?
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.
yes, it means that this field should be deleted from the base policy rather than added
idlFile: | ||
properties: | ||
$ref: | ||
pattern: ^http |
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.
what will happen if the file can't be downloaded from the URL? For example, the server rejects the request or times out. What is the timeout value?
can a failure that prevent NGINX Plus from reloading?
what happens if the download is slow? let's say it takes 60s. does it mean NGINX Plus will not be able to reload until the file is downloaded?
If this can cause too many problems, perhaps we should not allow external references
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.
Valid points. Let's discuss offline.
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.
Hi @rafwegv
Please see additional feedback:
(1) Do we need to update the CRD for APLogConf
? I see at least one change - the format can support grpc
.
https://docs.nginx.com/nginx-app-protect/configuration/#factory-configuration-files
(2) Do we need to use different default files for logging and/or policies for gRPC?
(based on https://docs.nginx.com/nginx-app-protect/configuration/#logging )
If that is the case, I think we need to update the template https://github.com/nginxinc/kubernetes-ingress/blob/master/internal/configs/version1/nginx-plus.ingress.tmpl#L67-L71
@@ -965,6 +1100,12 @@ spec: | |||
signature-requirements: | |||
items: | |||
properties: | |||
maxRevisionDatetime: |
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.
does this mean we're restoring this 1196174 ?
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.
not yet, this must have gotten reenabled in merge somwhere. will disable.
re:
Hi @pleshakov |
Hi @pleshakov, |
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.
Hi @rafwegv
Could you possibly rebase against the master? Note that we finally removed v1beta1 CRDS.
I also noticed a few seemingly unrelated to gRPC fields that were added to the CRDs. Like signatureOverrides
. Just to double check, are we adding any other features as part of this PR?
@pleshakov |
Proposed changes
This bumps the App Protect version to the last release and also introduces support for unary grpc in the Policy crd.
Checklist
Before creating a PR, run through this checklist and mark each as complete.