Skip to content
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

Native NGINX Configuration in Gateway API Design #1258

Closed
4 tasks done
mpstefan opened this issue Nov 17, 2023 · 0 comments
Closed
4 tasks done

Native NGINX Configuration in Gateway API Design #1258

mpstefan opened this issue Nov 17, 2023 · 0 comments
Labels
epic Represents an epic. Contains sub-issues refined Requirements are refined and the issue is ready to be implemented.
Milestone

Comments

@mpstefan
Copy link
Collaborator

mpstefan commented Nov 17, 2023

As a cluster operator running NGF
I want an easy way to apply configuration, NGINX or otherwise, at various levels of my application architecture
So that I can set defaults that can be overridden by application developers and security policies that cannot.

As a application developer running NGF
I want an easy way to configure NGINX directives by route
So that I can own the NGINX configuration for my own applications.

Background

As we move to expose native NGINX configuration to our users, we need to design an extensible way for that configuration to be set. Looking at the current GEP for meta-resources and policies it appears the most likely answer is in our own set of policies so that our configuration could easily be applied to the GatewayClass, Gateway, or Route objects.

The goal of this epic is to do some up front design to determine where various NGINX directives could be applied, what groups they might belong to, and what policies will need to be defined in future. We also need to implement a policy that include otel tracing support. We need to achieve a sweet spot between groups of functionality that are specific enough without reaching a large number of total policies.

Acceptance Criteria

  • A list of high-priority NGINX functionality that we want to deliver.
  • The high-priority NGINX functionality is formed into groups and those groups are associated with one or more roles from Gateway API.
  • For each group, extension or attachment points for implementation are identified.

Tasks

  1. area/nginx-configuration refined spike
    kate-osborn
  2. area/nginx-configuration blocked refined spike
    kate-osborn
  3. area/nginx-configuration refined spike
    kate-osborn
  4. area/nginx-configuration refined size/large
    kate-osborn
@mpstefan mpstefan converted this from a draft issue Nov 17, 2023
@mpstefan mpstefan added the epic Represents an epic. Contains sub-issues label Nov 17, 2023
@mpstefan mpstefan added this to the v1.2.0 milestone Nov 17, 2023
@mpstefan mpstefan added the refined Requirements are refined and the issue is ready to be implemented. label Dec 18, 2023
@mpstefan mpstefan changed the title Initial Policy and Filter Configuration Initial Extensions and Attachments Dec 19, 2023
@mpstefan mpstefan moved this from 🆕 New to 🏗 In Progress in NGINX Gateway Fabric Feb 7, 2024
@mpstefan mpstefan modified the milestones: v1.2.0, v2.0.0 Feb 7, 2024
@mpstefan mpstefan changed the title Initial Extensions and Attachments ClientSettings Design Mar 29, 2024
@mpstefan mpstefan moved this from 🏗 In Progress to ✅ Done in NGINX Gateway Fabric Mar 29, 2024
@mpstefan mpstefan changed the title ClientSettings Design Native NGINX Configuration in Gateway API Design Apr 1, 2024
@mpstefan mpstefan modified the milestones: v1.3.0, v1.2.0 Apr 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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

1 participant