Skip to content

Conversation

@kl52752
Copy link
Contributor

@kl52752 kl52752 commented Aug 21, 2025

What type of PR is this?

/kind gep
What this PR does / why we need it:
Merge Gateway TLS configuration for frontend and backend validation into top level GatewayTLSConfig.
Which issue(s) this PR fixes:

Related to: GEP-3155
Related to: #3979

Does this PR introduce a user-facing change?:

NONE

@k8s-ci-robot k8s-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. kind/gep PRs related to Gateway Enhancement Proposal(GEP) cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Aug 21, 2025
@k8s-ci-robot k8s-ci-robot added do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Aug 21, 2025
@kl52752
Copy link
Contributor Author

kl52752 commented Aug 21, 2025

/assign @robscott @youngnick @shaneutt
/cc @snorwin @candita

@shaneutt shaneutt requested a review from LiorLieberman August 21, 2025 11:37
@shaneutt shaneutt added this to the v1.4.0 milestone Aug 21, 2025
@shaneutt shaneutt moved this to Review in Release v1.4.0 Aug 21, 2025
// +optional
// <gateway:experimental>
FrontendValidation FrontendTLSValidation `json:"frontendValidation"`
BackendValidation *GatewayBackendTLS `json:"backendValidation,omitempty"`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I’m not sure if BackendValidation is the best name for this field, since validation is actually part of the BackendTLSPolicy.

A structure like the following might be clearer:

tls:
  frontend:
    validation: {}
  backend:
    clientCertificateRef: {}

Alternatively, we could use the terms origination (for backend) and termination (for frontend), which are common in TLS contexts.

Copy link
Contributor Author

@kl52752 kl52752 Aug 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah it makes sense. I updated PR PTAL.
I will update index.md and CRDs fields once we agree on final form.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! I would also love to hear some other opinions on this.

\cc @shaneutt, @robscott, @youngnick

Copy link
Contributor

@candita candita Aug 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have a GEP that establishes some naming guidelines here: https://gateway-api.sigs.k8s.io/geps/gep-2907. I think an update to that GEP is the first thing to do here.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure what you mean - @snorwin suggested the change above, which @kl52752 implemented, which uses frontend and backend. Is that not in line with what we have in GEP-2907?

In another comment thread here, I suggested termination and origination, but @robscott also reminded me about GEP2907 and the agreed names there, and I agreed that it's better to stick with them.

@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Aug 22, 2025
Copy link
Member

@robscott robscott left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great, thanks @kl52752!

@kl52752 kl52752 force-pushed the backend-tls branch 3 times, most recently from 31c2e3b to 76c650a Compare August 22, 2025 15:27
@kl52752
Copy link
Contributor Author

kl52752 commented Aug 22, 2025

Thanks @robscott for the review. I updated API with your suggestion. I will update index.md files and examples once we have all review.
@youngnick @shaneutt PTAL

Copy link
Member

@robscott robscott left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @kl52752! This helps make our top level Gateway configuration far more consistent.

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 22, 2025
@kl52752
Copy link
Contributor Author

kl52752 commented Aug 26, 2025

@shaneutt I would like to request the extension for this GEP and include it in v1.4.0 release in experimental channel. We need to reach out agreement for naming convention and I think that we are very close and need 24h to finalize this.

@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 26, 2025
@kl52752 kl52752 force-pushed the backend-tls branch 3 times, most recently from 3b0e4ed to 6f76a70 Compare August 26, 2025 08:34
@kl52752
Copy link
Contributor Author

kl52752 commented Aug 26, 2025

/retest

@shaneutt shaneutt linked an issue Aug 26, 2025 that may be closed by this pull request
@shaneutt shaneutt requested a review from rikatz August 26, 2025 14:39
@shaneutt
Copy link
Member

@shaneutt I would like to request the extension for this GEP and include it in v1.4.0 release in experimental channel. We need to reach out agreement for naming convention and I think that we are very close and need 24h to finalize this.

Granted via the parent here for all things under the parent.

Copy link
Member

@shaneutt shaneutt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As per our conversation about this on the community call today:

This is not about changing behavior, but about changing wording and API spec prior to lock-in which would make it harder. There was a lot of support on the call that we should move forward. Since this seems like an overall improvement:

/lgtm

However it was also mentioned that the GEP and documentation is unclear about some of the details. @kl52752 are you open to providing more context in the GEP as per our discussion today, as part of the 1 week extension we're doing here?

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Aug 26, 2025
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: kl52752, robscott, shaneutt, snorwin

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kl52752
Copy link
Contributor Author

kl52752 commented Aug 27, 2025

Related to: #3979

I created a PR with updates to GEP-2907. Should I updated also https://gateway-api.sigs.k8s.io/guides/tls/?

@shaneutt
Copy link
Member

Related to: #3979

I created a PR with updates to GEP-2907. Should I updated also https://gateway-api.sigs.k8s.io/guides/tls/?

On our call yesterday, we pointed out that it's common that experimental stuff lags in documentation, so we don't want to hold you to some standard we've not held for others. At your option, if you feel inclined and can spare the time, that would be great, however it doesn't preclude the notion of us merging this.

@robscott
Copy link
Member

Thanks @kl52752! It looks like everything's been resolved here and we have multiple approvals now, removing the hold and we can cover docs + GEP update in the follow up PRs.

/hold cancel

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 27, 2025
@k8s-ci-robot k8s-ci-robot merged commit 0eb5550 into kubernetes-sigs:main Aug 27, 2025
19 checks passed
@github-project-automation github-project-automation bot moved this from Review to Done in Release v1.4.0 Aug 27, 2025
tylerauerbeck pushed a commit to tylerauerbeck/gateway-api that referenced this pull request Nov 27, 2025
* Move BackendTLS configuration to GatewayTLSConfig

* review
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/gep PRs related to Gateway Enhancement Proposal(GEP) lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note-none Denotes a PR that doesn't merit a release note. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Gateway.BackendTLS is Support:Core without conformance tests

8 participants