Helm Configuration
The em-runtime Helm chart packages all platform services and their dependencies into a single deployable unit. This guide covers the chart architecture, deployment modes, secret management, and production configuration.Chart Overview
The chart deploys and manages the following components:Deployment Modes
- In-Cluster (Default)
- External Databases (Production)
All dependencies (PostgreSQL, Redis) are deployed as part of the Helm release within the cluster.Best for development, testing, and quick setup.
Secret Management
All platform credentials are consolidated into a single chart-managed Secret namedem-runtime-secrets. In external mode, you provide base connection details, and the chart auto-computes derived values.
External Credentials Secret
Create this before installing the chart when using external databases:Set
redis-scheme to rediss (double s) for TLS connections (e.g., GCP Memorystore with in-transit encryption).S3 Storage Credentials
External Object Storage
For production, use S3-compatible object storage instead of the default PVC:Provider-Specific Notes
Enabling HTTPS
EM-Runtime uses Gateway API for routing. TLS termination is configured on the Gateway resource using cert-manager.1
Install cert-manager
Install cert-manager with Gateway API support enabled (
config.enableGatewayAPI=true).2
Create ClusterIssuer
Create a ClusterIssuer for your ACME provider (e.g., Let’s Encrypt).
3
Annotate Gateway
Add
cert-manager.io/cluster-issuer annotation and configure an HTTPS listener on your Gateway resource.Service URL Environment Variables
Service-to-service communication uses canonical URL environment variables. These names were standardized as part of PE-200; legacy aliases are retained as temporary hotfixes for older application versions.
Application versions still on the legacy names continue to work because both are set during the rollout. Once all consumer applications upgrade past the migration point, the legacy aliases will be removed.
UI compliance and external link variables
The Runtime UI surfaces compliance links (Terms of Service, Privacy Policy, DPA) and an embedded analytics script. Configure them via env vars on theem-runtime-ui deployment:
These are configured via the
em-runtime-ui.env block in values.yaml, the same way as service URLs above.
Environment Variable Override System
Each runtime service has three layers for environment variables:Override Precedence
Bootstrap Configuration
On first startup, the platform bootstraps a default organization:The
organizationId must contain only alphanumeric characters, hyphens, or underscores.Production Values File
Below is a sampleproduction-values.yaml:
Install with Production Values
Testing
The chart includes a Helm test hook that runs end-to-end tests:Backups
Back up these components together for a consistent restore:Next Steps
Values Reference
Complete reference for all Helm chart values.
Upgrades
Version upgrades, migration steps, and rollback procedures.
OpenTelemetry
Configure telemetry for all runtime services.

