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

Route ParentRef field does not mention ReferencePolicy #973

Closed
jpeach opened this issue Dec 23, 2021 · 9 comments · Fixed by #1594
Closed

Route ParentRef field does not mention ReferencePolicy #973

jpeach opened this issue Dec 23, 2021 · 9 comments · Fixed by #1594
Assignees
Labels
help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/bug Categorizes issue or PR as related to a bug.

Comments

@jpeach
Copy link
Contributor

jpeach commented Dec 23, 2021

What happened:

The Namespace field of the ParentRef structure doesn't mention whether a ReferencePolicy is required for the controller to follow a cross-namespace reference.

What you expected to happen:

I would expect all cross-namespace references to check a ReferencePolicy.

@jpeach jpeach added the kind/bug Categorizes issue or PR as related to a bug. label Dec 23, 2021
@jpeach
Copy link
Contributor Author

jpeach commented Dec 23, 2021

CommonRouteSpec says

For Gateways, that means the Gateway needs to allow attachment from Routes of this kind and namespace.

which I take to mean that ReferencePolicy is required. So this issue is just about making it clearer.

@robscott
Copy link
Member

@jpeach I agree that this does need more clarification. My perspective here is that something in the target namespace needs to explicitly allow references to a resource from resources in other namespaces for them to be considered valid. In the case of ParentRef, when it refers to Gateway, a ReferencePolicy is not relevant because the Gateway itself can configure where Routes can be attached from. On the other hand, a ReferencePolicy would be relevant when attaching to some other parent resource that did not have that kind of built in capability.

@jpeach
Copy link
Contributor Author

jpeach commented Dec 23, 2021

@robscott I completely forgot about the AllowedRoutes field in the Gateway. While it is probably a bit unfortunate that we have two similar mechanisms, thinking about consolidation would have to be in the next API version.

@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle stale
  • Mark this issue or PR as rotten with /lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 23, 2022
@youngnick
Copy link
Contributor

/remove-lifecycle stale

I think that we should say that any resource that can act as a ParentRef must include something that acts like AllowedRoutes if it supports cross-namespace attachment. ReferencePolicy should be used for objects that don't have a direct Gateway API attachment formed, or that we can't change the spec of, like Secret and Service.

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 25, 2022
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle stale
  • Mark this issue or PR as rotten with /lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jun 23, 2022
@youngnick
Copy link
Contributor

/remove-lifecycle stale

The remaining action here is a some guidance to API designers (ie, us), that we should use a field like AllowedRoutes where we control the spec on both sides of the two-way handshake, and ReferencePolicy where we don't.

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jun 27, 2022
@shaneutt shaneutt added the help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. label Aug 16, 2022
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle stale
  • Mark this issue or PR as rotten with /lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Nov 14, 2022
@youngnick
Copy link
Contributor

/remove-lifecycle stale

I'll get this one done.

/assign

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 2, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/bug Categorizes issue or PR as related to a bug.
Projects
None yet
6 participants