Ingress & Routing¶
helm-me generates a Kubernetes Ingress resource when expose.ingress is set.
You do not need to add public_paths on components for the basic case — a default
/ catch-all route is created automatically when there is exactly one routable
web component.
Basic Ingress¶
The simplest setup — expose the whole app through a single hostname:
This generates an Ingress with a single rule: app.example.com → / → my-app-backend:8000.
Path-Based Routing¶
Route different URL paths to different components:
This creates a single Ingress with four path rules routing to the appropriate services.
Note
When public_paths is defined on any component, the auto-fallback / route
is disabled. If more than one component should be reachable through the same
ingress, define paths explicitly on each component.
Internal Paths¶
Paths visible only within the cluster (not exposed through the Ingress):
Base Path¶
Inject APP_BASE_PATH into the container so sub-path apps render links correctly:
TLS¶
When you use inline TLS (tls_secret(...) or YAML with name + cert_file /
key_file), helm-me creates a Kubernetes TLS Secret and includes it in
the rendered manifests automatically. Relative file paths are resolved from the
directory containing the spec file.
Verify the Rendered Ingress¶
Before deploying, you can inspect the generated Ingress resource:
Or preview changes against a live cluster: