From 445d8b6e7e1a011a64c67e3f08f5ee2d6bd67b41 Mon Sep 17 00:00:00 2001 From: Ben Vincent Date: Sat, 23 May 2026 17:34:07 +1000 Subject: [PATCH] =?UTF-8?q?feat:=20add=20HTTP=E2=86=92HTTPS=20redirect=20t?= =?UTF-8?q?o=20Gateway=20API=20services=20(#145)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add port 80 HTTP listener and redirect HTTPRoute to artifactapi, cattle-system (rancher), litellm, paperclip, and puppetboard — restoring the redirect behaviour that existed on the previous nginx/traefik Ingress resources. Reviewed-on: https://git.unkin.net/unkin/argocd-apps/pulls/145 --- apps/base/artifactapi/gateway.yaml | 7 ++++++ apps/base/artifactapi/httproute.yaml | 22 +++++++++++++++++ apps/base/cattle-system/gateway.yaml | 7 ++++++ apps/base/cattle-system/httproute.yaml | 22 +++++++++++++++++ apps/base/litellm/gateway.yaml | 7 ++++++ apps/base/litellm/httproute.yaml | 22 +++++++++++++++++ apps/base/paperclip/gateway.yaml | 7 ++++++ apps/base/paperclip/httproute.yaml | 22 +++++++++++++++++ apps/base/puppet/gateway_puppetboard.yaml | 7 ++++++ apps/base/puppet/httproute_puppetboard.yaml | 27 +++++++++++++++++++++ 10 files changed, 150 insertions(+) diff --git a/apps/base/artifactapi/gateway.yaml b/apps/base/artifactapi/gateway.yaml index f1180b5..b0ea6ed 100644 --- a/apps/base/artifactapi/gateway.yaml +++ b/apps/base/artifactapi/gateway.yaml @@ -15,6 +15,13 @@ metadata: spec: gatewayClassName: traefik-internal listeners: + - allowedRoutes: + namespaces: + from: Same + hostname: artifactapi.k8s.syd1.au.unkin.net + name: http + port: 80 + protocol: HTTP - allowedRoutes: namespaces: from: Same diff --git a/apps/base/artifactapi/httproute.yaml b/apps/base/artifactapi/httproute.yaml index e106492..b959e81 100644 --- a/apps/base/artifactapi/httproute.yaml +++ b/apps/base/artifactapi/httproute.yaml @@ -1,6 +1,28 @@ --- apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute +metadata: + name: artifactapi-http-redirect + namespace: artifactapi +spec: + hostnames: + - artifactapi.k8s.syd1.au.unkin.net + parentRefs: + - name: artifactapi + sectionName: http + rules: + - filters: + - type: RequestRedirect + requestRedirect: + scheme: https + statusCode: 301 + matches: + - path: + type: PathPrefix + value: / +--- +apiVersion: gateway.networking.k8s.io/v1 +kind: HTTPRoute metadata: name: artifactapi namespace: artifactapi diff --git a/apps/base/cattle-system/gateway.yaml b/apps/base/cattle-system/gateway.yaml index 5fa8812..c81bfdf 100644 --- a/apps/base/cattle-system/gateway.yaml +++ b/apps/base/cattle-system/gateway.yaml @@ -15,6 +15,13 @@ metadata: spec: gatewayClassName: traefik-internal listeners: + - allowedRoutes: + namespaces: + from: Same + hostname: rancher.k8s.syd1.au.unkin.net + name: http + port: 80 + protocol: HTTP - allowedRoutes: namespaces: from: Same diff --git a/apps/base/cattle-system/httproute.yaml b/apps/base/cattle-system/httproute.yaml index 6e972da..4499dc0 100644 --- a/apps/base/cattle-system/httproute.yaml +++ b/apps/base/cattle-system/httproute.yaml @@ -1,6 +1,28 @@ --- apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute +metadata: + name: rancher-http-redirect + namespace: cattle-system +spec: + hostnames: + - rancher.k8s.syd1.au.unkin.net + parentRefs: + - name: rancher + sectionName: http + rules: + - filters: + - type: RequestRedirect + requestRedirect: + scheme: https + statusCode: 301 + matches: + - path: + type: PathPrefix + value: / +--- +apiVersion: gateway.networking.k8s.io/v1 +kind: HTTPRoute metadata: name: rancher namespace: cattle-system diff --git a/apps/base/litellm/gateway.yaml b/apps/base/litellm/gateway.yaml index 3d20f56..88d987a 100644 --- a/apps/base/litellm/gateway.yaml +++ b/apps/base/litellm/gateway.yaml @@ -15,6 +15,13 @@ metadata: spec: gatewayClassName: traefik-internal listeners: + - allowedRoutes: + namespaces: + from: Same + hostname: litellm.k8s.syd1.au.unkin.net + name: http + port: 80 + protocol: HTTP - allowedRoutes: namespaces: from: Same diff --git a/apps/base/litellm/httproute.yaml b/apps/base/litellm/httproute.yaml index 87f1a01..2743981 100644 --- a/apps/base/litellm/httproute.yaml +++ b/apps/base/litellm/httproute.yaml @@ -1,6 +1,28 @@ --- apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute +metadata: + name: litellm-http-redirect + namespace: litellm +spec: + hostnames: + - litellm.k8s.syd1.au.unkin.net + parentRefs: + - name: litellm + sectionName: http + rules: + - filters: + - type: RequestRedirect + requestRedirect: + scheme: https + statusCode: 301 + matches: + - path: + type: PathPrefix + value: / +--- +apiVersion: gateway.networking.k8s.io/v1 +kind: HTTPRoute metadata: name: litellm namespace: litellm diff --git a/apps/base/paperclip/gateway.yaml b/apps/base/paperclip/gateway.yaml index 38ab7af..5690450 100644 --- a/apps/base/paperclip/gateway.yaml +++ b/apps/base/paperclip/gateway.yaml @@ -15,6 +15,13 @@ metadata: spec: gatewayClassName: traefik-internal listeners: + - allowedRoutes: + namespaces: + from: Same + hostname: paperclip.k8s.syd1.au.unkin.net + name: http + port: 80 + protocol: HTTP - allowedRoutes: namespaces: from: Same diff --git a/apps/base/paperclip/httproute.yaml b/apps/base/paperclip/httproute.yaml index 98939f9..4149282 100644 --- a/apps/base/paperclip/httproute.yaml +++ b/apps/base/paperclip/httproute.yaml @@ -1,6 +1,28 @@ --- apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute +metadata: + name: paperclip-http-redirect + namespace: paperclip +spec: + hostnames: + - paperclip.k8s.syd1.au.unkin.net + parentRefs: + - name: paperclip + sectionName: http + rules: + - filters: + - type: RequestRedirect + requestRedirect: + scheme: https + statusCode: 301 + matches: + - path: + type: PathPrefix + value: / +--- +apiVersion: gateway.networking.k8s.io/v1 +kind: HTTPRoute metadata: name: paperclip namespace: paperclip diff --git a/apps/base/puppet/gateway_puppetboard.yaml b/apps/base/puppet/gateway_puppetboard.yaml index af1fc20..6b7d0a0 100644 --- a/apps/base/puppet/gateway_puppetboard.yaml +++ b/apps/base/puppet/gateway_puppetboard.yaml @@ -19,6 +19,13 @@ metadata: spec: gatewayClassName: traefik-internal listeners: + - allowedRoutes: + namespaces: + from: Same + hostname: puppetboard.k8s.syd1.au.unkin.net + name: http + port: 80 + protocol: HTTP - allowedRoutes: namespaces: from: Same diff --git a/apps/base/puppet/httproute_puppetboard.yaml b/apps/base/puppet/httproute_puppetboard.yaml index 6794b2d..9819177 100644 --- a/apps/base/puppet/httproute_puppetboard.yaml +++ b/apps/base/puppet/httproute_puppetboard.yaml @@ -1,6 +1,33 @@ --- apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute +metadata: + labels: + app.kubernetes.io/component: puppetboard + app.kubernetes.io/instance: puppetserver + app.kubernetes.io/name: puppetserver + app.kubernetes.io/version: 8.8.0 + name: puppetboard-http-redirect + namespace: puppet +spec: + hostnames: + - puppetboard.k8s.syd1.au.unkin.net + parentRefs: + - name: puppetboard + sectionName: http + rules: + - filters: + - type: RequestRedirect + requestRedirect: + scheme: https + statusCode: 301 + matches: + - path: + type: PathPrefix + value: / +--- +apiVersion: gateway.networking.k8s.io/v1 +kind: HTTPRoute metadata: labels: app.kubernetes.io/component: puppetboard