[go: up one dir, main page]

Skip to content

NGINX Ingress: Configure proxy request buffering for workhorse

What does this MR do?

GitLab workhorse needs customizable proxy_request_buffering settigs on a path level. This can be achieved using server snippets or by utilizing a customized NGINX template.

While the first option is more flexible, it requires additional NGINX configuration which is not recommended because of security concerns. Using a custom template allows us pass the necessary NGINX configuration without these concerns.

Reviewer notes

  • The first commit is empty and has only the expected (squash) commit message.
  • The second commit imports default NGINX configuration without changes.
  • All functional and documentation changes are in the following commits.

Impact

  1. This allows us to unblock several issues related to Git over SSH and should improve performance for large uploads and streaming requests.
  2. This replicas known and tested Omnibus behavior: https://gitlab.com/gitlab-org/omnibus-gitlab/-/blob/e9dfceb9b27928fadf4154bea35ecd56575ec794/files/gitlab-cookbooks/gitlab/templates/default/nginx-gitlab-http.conf.erb#L183.
  3. We will need to update the NGINX template when we update the controller image.

Related issues and MRs

Author checklist

For general guidance, please follow our Contributing guide.

Required

For anything in this list which will not be completed, please provide a reason in the MR discussion.

Reviewers checklist

Edited by Clemens Beck

Merge request reports

Loading