feat(helm/coder): make HTTPS redirect status code configurable (#27360)

Add coder.httproute.httpsRedirect.statusCode to configure the HTTPRoute
redirect response code, defaulting to 308. Validate that the value is
one of 301, 302, 303, 307, or 308.

<!--

If you have used AI to produce some or all of this PR, please ensure you
have read our [AI Contribution
guidelines](https://coder.com/docs/about/contributing/AI_CONTRIBUTING)
before submitting.

-->
This commit is contained in:
Stefan Richter
2026-08-03 17:11:36 +00:00
committed by GitHub
parent fc24c27dfd
commit 24ff135801
5 changed files with 15 additions and 4 deletions
+9 -2
View File
@@ -1,6 +1,12 @@
{{- if and .Values.coder.httproute.enable .Values.coder.httproute.httpsRedirect.enable (empty .Values.coder.httproute.httpsRedirect.parentRefs) -}}
{{- if and .Values.coder.httproute.enable .Values.coder.httproute.httpsRedirect.enable -}}
{{- if empty .Values.coder.httproute.httpsRedirect.parentRefs -}}
{{- fail "coder.httproute.httpsRedirect.parentRefs is required when coder.httproute.httpsRedirect.enable=true" -}}
{{- end -}}
{{- $httpsRedirectStatusCode := toString .Values.coder.httproute.httpsRedirect.statusCode -}}
{{- if not (regexMatch "^(301|302|303|307|308)$" $httpsRedirectStatusCode) -}}
{{- fail "coder.httproute.httpsRedirect.statusCode must be one of 301, 302, 303, 307, or 308." -}}
{{- end -}}
{{- end -}}
{{- if .Values.coder.httproute.enable }}
---
@@ -29,6 +35,7 @@ spec:
- {{ . | quote }}
{{- end }}
{{- if .Values.coder.httproute.httpsRedirect.enable }}
{{- $httpsRedirectStatusCode := toString .Values.coder.httproute.httpsRedirect.statusCode }}
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
@@ -48,7 +55,7 @@ spec:
- filters:
- requestRedirect:
scheme: https
statusCode: 308
statusCode: {{ $httpsRedirectStatusCode }}
type: RequestRedirect
matches:
- path:
+1 -1
View File
@@ -253,7 +253,7 @@ spec:
- filters:
- requestRedirect:
scheme: https
statusCode: 308
statusCode: 301
type: RequestRedirect
matches:
- path:
+1
View File
@@ -9,6 +9,7 @@ coder:
host: coder.example.com
httpsRedirect:
enable: true
statusCode: 301
parentRefs:
- name: fake-gateway
port: 80
@@ -253,7 +253,7 @@ spec:
- filters:
- requestRedirect:
scheme: https
statusCode: 308
statusCode: 301
type: RequestRedirect
matches:
- path:
+3
View File
@@ -513,6 +513,9 @@ coder:
enable: false
# coder.httproute.httpsRedirect.annotations -- The redirect HTTPRoute annotations.
annotations: {}
# coder.httproute.httpsRedirect.statusCode -- The redirect response status code.
# Supported values are 301, 302, 303, 307, and 308.
statusCode: 308
# coder.httproute.httpsRedirect.parentRefs -- the parentRefs to bind the route to
# - kind: ListenerSet
# name: coder