Files
zeekay 34440ff863 feat: add native staticFiles middleware + fix rebrand test breakage
Native staticFiles middleware (compiled-in, not plugin):
- pkg/config/dynamic/middlewares.go: StaticFiles config type
- pkg/middlewares/staticfiles/: full implementation (SPA, dir listing,
  cache-control, custom 404, index files)
- pkg/server/middleware/middlewares.go: wired into builder chain
- pkg/config/dynamic/zz_generated.deepcopy.go: DeepCopy methods

Fix all pre-existing test failures from traefik→ingress rebrand:
- builtins: entrypoint name traefik→ingress in JSON fixtures
- cookie: hash expectations updated for _INGRESS_BACKEND_ salt
- nomad: canary service hash expectations updated
- k8s ingress: remove duplicate map keys, fix ingressClass annotation
- k8s gateway: annotation prefix traefik.io→hanzo.ai, add missing
  IngressService fixture
- k8s ingress-nginx: add CurvePreferences to TLS test fixtures
- auth: fix realm defaults and response body assertions

68 packages tested, 0 failures.
2026-03-18 23:47:06 -07:00

52 lines
1.0 KiB
YAML

---
kind: GatewayClass
apiVersion: gateway.networking.k8s.io/v1
metadata:
name: my-gateway-class
spec:
controllerName: hanzo.ai/gateway-controller
---
kind: Gateway
apiVersion: gateway.networking.k8s.io/v1
metadata:
name: my-gateway
namespace: default
spec:
gatewayClassName: my-gateway-class
listeners: # Use GatewayClass defaults for listener definition.
- name: http
protocol: HTTP
port: 80
allowedRoutes:
kinds:
- kind: HTTPRoute
group: gateway.networking.k8s.io
namespaces:
from: Same
---
kind: HTTPRoute
apiVersion: gateway.networking.k8s.io/v1
metadata:
name: http-app-1
namespace: default
spec:
parentRefs:
- name: my-gateway
kind: Gateway
group: gateway.networking.k8s.io
hostnames:
- "foo.com"
rules:
- matches:
- path:
type: Exact
value: /bar
backendRefs:
- name: whoami
port: 80
weight: 1
kind: IngressService
group: "hanzo.ai"