Skip to content

Advanced NGINX Extensions #703

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

Closed
mpstefan opened this issue May 31, 2023 · 4 comments
Closed

Advanced NGINX Extensions #703

mpstefan opened this issue May 31, 2023 · 4 comments
Labels
area/nginx-configuration Relates to nginx configuration epic Represents an epic. Contains sub-issues refined Requirements are refined and the issue is ready to be implemented.
Milestone

Comments

@mpstefan
Copy link
Member

mpstefan commented May 31, 2023

As a user of NKG that has a need for an enhancement in the project
I want the ability to customize the NGINX configuration for NGF
So that I can utilize features that have not yet been exposed via configuration
Or so that I can work around a problem that has not yet been solved in NGF, but can be fixed through NGINX configuration.

Background

Our approach to exposing NGINX functionality is two-fold. One, is to take the most frequently used features and configuration changes for NGINX and integrate them with the Gateway API as first-class features in extensions and attachments to the API.

However, as this will take time to work through everything NGINX has to offer, we need a way for our users to access that NGINX functionality immediately. We can do so by offering a method to manually put in the directives they wish to configure and the exact settings needed. While no where near as user friendly, this will unblock any user looking for NGINX functionality that is not yet present in our extensions and attachments to the Gateway API.

Specific Feedback

  • Impressions from KubeCon Paris included a general awareness of what Gateway API is capable of at this point and that NGINX can support their use case if they can directly configure it.

Acceptance Criteria

  • Users have the ability to customize the NGINX configuration that NGF generates.
  • Users have the ability to add NGINX configuration to the configuration that NGF generates.
  • The NGINX configuration customization is provided by an extension or attachment to the Gateway API.
### Tasks
- [ ] #815
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/2415
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/2468
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/2416
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/2417
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/2377
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/2373
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/2375
- [ ] https://github.com/nginxinc/nginx-gateway-fabric/issues/2371

Links

@mpstefan
Copy link
Member Author

This story is pending a discussion - primarily for support and security.

@mpstefan mpstefan modified the milestones: v1.0.0, v0.6.0 May 31, 2023
@mpstefan mpstefan added the enhancement New feature or request label Jun 9, 2023
@mpstefan mpstefan modified the milestones: v0.6.0, v1.0.0 Jun 27, 2023
@mpstefan
Copy link
Member Author

mpstefan commented Jul 5, 2023

We decided today that we need a short spike to determine a potential technical solution. From there we can assess the amount of effort needed for implementation, security concerns, and support concerns.

@mpstefan mpstefan added the blocked Blocked by other issue label Jul 5, 2023
@mpstefan mpstefan modified the milestones: v1.0.0, v1.0.1 Aug 11, 2023
@mpstefan mpstefan modified the milestones: v1.0.1, v1.2.0 Sep 22, 2023
@mpstefan
Copy link
Member Author

Received some feedback today from @gallarda around involving RBAC around the snippet functionality currently present in NIC. When we examine this, we should consider utilizing the different levels of resources (primarily Gateway and Routes) to allow users to setup separate access controls for access to nginx customization.

@brianehlert
Copy link

Received some feedback today from @gallarda around involving RBAC around the snippet functionality currently present in NIC. When we examine this, we should consider utilizing the different levels of resources (primarily Gateway and Routes) to allow users to setup separate access controls for access to nginx customization.

  • the concept of reusable snippets (like a library of snippet functions)
  • the concept of then gating who can use which snippets, or even limiting what a snippet can be attached to

@mpstefan mpstefan modified the milestones: v1.2.0, v1.3.0 Dec 11, 2023
@mpstefan mpstefan added epic Represents an epic. Contains sub-issues and removed blocked Blocked by other issue labels Mar 12, 2024
@mpstefan mpstefan modified the milestones: v1.3.0, v2.0.0 Mar 12, 2024
@mpstefan mpstefan added area/nginx-configuration Relates to nginx configuration and removed enhancement New feature or request labels Mar 12, 2024
@mpstefan mpstefan modified the milestones: v1.3.0, v2.0.0 Mar 13, 2024
@mpstefan mpstefan changed the title Template Customization for NGINX NGINX Configuration Customization Jun 3, 2024
@mpstefan mpstefan added the refined Requirements are refined and the issue is ready to be implemented. label Jun 3, 2024
@mpstefan mpstefan modified the milestones: v1.4.0, v2.0.0 Jun 12, 2024
@mpstefan mpstefan changed the title NGINX Configuration Customization Advanced NGINX Extensions Aug 12, 2024
@mpstefan mpstefan removed the refined Requirements are refined and the issue is ready to be implemented. label Aug 12, 2024
@mpstefan mpstefan added the refined Requirements are refined and the issue is ready to be implemented. label Aug 26, 2024
@sjberman sjberman mentioned this issue Oct 9, 2024
6 tasks
@lucacome lucacome moved this to ✅ Done in NGINX Gateway Fabric Jan 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/nginx-configuration Relates to nginx configuration epic Represents an epic. Contains sub-issues refined Requirements are refined and the issue is ready to be implemented.
Projects
Archived in project
Development

No branches or pull requests

2 participants