Skip to content

Gateway Core Support #612

@mpstefan

Description

@mpstefan

For our release of NGINX Gateway v1.0, we need at least core support for the Gateway API Object as defined in the Kubernetes Gateway API v1beta1. This epic will track all the enhancements that need to be made to the HTTPRoute to reach support for "core".

List of extended or implementation specific features that will NOT be implemented at this time:

  • listener tls options
  • requested addresses

Acceptance:

  • Documentation is updated to reflect what extended features are still unsupported.
### Stories
- [ ] #475
- [ ] #610
- [ ] https://github.com/nginxinc/nginx-kubernetes-gateway/issues/632
- [ ] #368
- [ ] https://github.com/nginxinc/nginx-kubernetes-gateway/issues/370
- [ ] https://github.com/nginxinc/nginx-kubernetes-gateway/issues/553
- [ ] https://github.com/nginxinc/nginx-kubernetes-gateway/issues/478
- [ ] https://github.com/nginxinc/nginx-kubernetes-gateway/issues/687
- [ ] https://github.com/nginxinc/nginx-kubernetes-gateway/issues/712
- [ ] https://github.com/nginxinc/nginx-kubernetes-gateway/issues/774

For Discussion:

  • Why would a listener be able to accept TCP, TLS, and UDP traffic without having the matching route? How do the Gateway conformance tests test for this?
    • The Kubernetes API specification for ProtocolType mentions implementations are not required to accept all the defined protocols, yet lists HTTP, HTTPS, TCP, TLS, and UDP as "core".
  • Will Secrets be sufficient to store listener tls certificateRefs for core? The specification states:
    A single CertificateRef to a Kubernetes Secret has \"Core\" support. Implementations MAY choose to support attaching multiple certificates to a Listener, but this behavior is implementation-specific.
    Any additional detail around "partial support" for certificateRefs?
  • GatewayStatus does not specify a support level. Is GatewayStatus included in the conformance tests? How necessary is its inclusion in our v1.0?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestepicRepresents an epic. Contains sub-issuesrefinedRequirements are refined and the issue is ready to be implemented.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions