nginxinc / nginx-go-crossplane

A library for working with NGINX configs in Go
Apache License 2.0
46 stars 12 forks source link

Proposal: Parsing of partial configurations #94

Open ornj opened 2 months ago

ornj commented 2 months ago

Is your feature request related to a problem? Please describe

There may be cases where a Crossplane user wants to parse and validate a "partial" NGINX configuration. For example, you could have a snippet of configuration that represents the implementation of a security policy that you want to inject into http > server contexts. Before storing this you may want to validate it with crossplane to ensure the snippet itself looks valid.

You could parse this snippet today, but most likely you would need to disable most of Crossplane's checks in order do so which would not meet the desire to validate the syntax (arguments, directive placement).

Describe the solution you'd like

An API change that allows the caller to provide some metadata/context about the snippet so that Crossplane is aware of what the "context" is when validating the snippet.

Describe alternatives you've considered