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

Header based session persistence cannot be configured without AbsoluteTimeout #3214

Closed
sanposhiho opened this issue Jul 24, 2024 · 1 comment · Fixed by #3215
Closed

Header based session persistence cannot be configured without AbsoluteTimeout #3214

sanposhiho opened this issue Jul 24, 2024 · 1 comment · Fixed by #3215
Labels
kind/bug Categorizes issue or PR as related to a bug.

Comments

@sanposhiho
Copy link
Member

What happened:

Header based session persistence cannot be configured without AbsoluteTimeout.

If you apply -

apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: envoy-header-based-session-persistence
  namespace: gateway-conformance-infra
spec:
  parentRefs:
    - name: same-namespace
  rules:
    - matches:
        - path:
            type: PathPrefix
            value: /
      backendRefs:
        - name: infra-backend-v1
          port: 8080
        - name: infra-backend-v2
          port: 8080
      sessionPersistence:
        sessionName: session-a
        type: Header

it hits the validation issue:

AbsoluteTimeout must be specified when cookie lifetimeType is Permanent

What you expected to happen:

Header based session persistence shouldn't have CookieConfig, and it should be allowed Header based session persistence not to have AbsoluteTimeout.

How to reproduce it (as minimally and precisely as possible):

Just apply -

apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: envoy-header-based-session-persistence
  namespace: gateway-conformance-infra
spec:
  parentRefs:
    - name: same-namespace
  rules:
    - matches:
        - path:
            type: PathPrefix
            value: /
      backendRefs:
        - name: infra-backend-v1
          port: 8080
        - name: infra-backend-v2
          port: 8080
      sessionPersistence:
        sessionName: session-a
        type: Header

Anything else we need to know?:

@gauravkghildiyal
Copy link
Member

Thanks for catching this @sanposhiho

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants