@@ -68,4 +68,38 @@ proxy:
6868
6969Note that in the case that gatekeepers are enabled, the same configurations are applied
7070to the gatekeepers, unless the application override them on `harness.proxy.*`.
71- See also the [gatekeepers documentation](./accounts.md#secure-and-enpoint-with-the-gatekeeper).
71+ See also the [gatekeepers documentation](./accounts.md#secure-and-enpoint-with-the-gatekeeper).
72+
73+ # # Route pattern configuration
74+
75+ Cloud Harness allows customizing which request paths are routed to an application
76+ via a glob-style regular expression. There are two levels where this can be set :
77+
78+ - **Global**: `ingress.route_pattern` in `deployment-configuration/helm/values.yaml` (applies to all apps by default).
79+ - **Application**: `harness.route_pattern` in an application's `values.yaml` (overrides the global value for that app).
80+
81+ The Helm ingress template uses the application-level `harness.route_pattern` when present,
82+ falling back to the global `ingress.route_pattern` otherwise.
83+
84+ Example (global default in `deployment-configuration/helm/values.yaml`) :
85+
86+ ` ` ` yaml
87+ ingress:
88+ # Default regex segment for routes (used in paths like '/(pattern)')
89+ route_pattern: "/(.*)"
90+ ` ` `
91+
92+ Example (application override in `applications/<app>/deploy/values.yaml`) :
93+
94+ ` ` ` yaml
95+ harness:
96+ # route_pattern is used to build the Ingress path for the app
97+ route_pattern: '/((?!(?:metrics)(?:/)?$).*)' # exclude only '/metrics' and '/metrics/'
98+ ` ` `
99+
100+ Notes :
101+ - The pattern is inserted into the generated Ingress `path` field. Make sure the regex
102+ is valid for your ingress controller and matches the expected path syntax.
103+ - If you only need to exclude a single exact path (for example `/metrics`), use a
104+ negative lookahead like the example above. If you prefer a simpler global default,
105+ leave `ingress.route_pattern` as `"/(.*)"` and override per-app when needed.
0 commit comments