Skip to content

Allow Pomerium CRD to have global annotations to be used for every ingress #1048

Open
@bennesp

Description

@bennesp

Is your feature request related to a problem? Please describe.

In my cluster, I would like to apply some configurations to every Ingress that Pomerium ingress-controller manages.

As an example, I would like to be able to configure ingress.pomerium.io/preserve_host_header: true to every Ingress, so that every Service receives the HTTP request with the original Host header.

Describe the solution you'd like

I thought of mainly two solutions:

  • A generic one: modify the Pomerium CRD to support a .spec.ingressAnnotations or .spec.annotations or similar field. This field would be of type map[string]string. While evaluating every Ingress, the Pomerium ingress-controller would first merge the global annotations defined in the Pomerium CRD in the new field with the Ingress specific ones, and then proceed in the evaluation of the Ingress
  • A specific one: create a new field in Pomerium CRD for every configuration. In the above example, I would expect a .spec.preserveHostHeader bool field to exist

Explain any additional use-cases

The generic approach would be beneficial for many other annotations that do not have a global setting right now

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions