[charts/gateway] Add h2 option when deploy gateway#503
Conversation
|
Could add to the release notes about the support of h2 |
Issue 1 — Split-brain when
|
Issue 2 — No
|
emilytzhang
left a comment
There was a problem hiding this comment.
Please update the README file as well
|
The Gateway has two mutually exclusive configuration modes:
Every DB-related env var respects this gate — except the new one: When Fix: Move the new block inside the existing {{- if .Values.disklessConfig.enabled }}
{{- if .Values.database.enabled }}
SSG_DATABASE_JDBC_URL: ...
{{- end }}
{{- if .Values.database.type }}
SSG_DATABASE_TYPE: {{ .Values.database.type | lower | quote }}
{{- end }}
{{- end }} |
…brain Guard SSG_DATABASE_TYPE emission on database.enabled=false to prevent contradictory env vars when database.type is set alongside an external DB. Add 3.1.3 release notes documenting H2 embedded database support. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Fail at render time when database.type is set alongside database.enabled:true, surfacing the misconfiguration before pod scheduling rather than at container boot. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
SSG_DATABASE_TYPE must only be emitted in diskless mode, matching every other DB env var. Previously it leaked into the ConfigMap even when node.properties was the active config channel (disklessConfig.enabled: false), creating a redundant second source of truth. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…atabase Migration Job) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Description of the change
Adds a new optional
database.typefield to the Gateway Helm chartvalues.yamlandproduction-values.yaml. When set to"h2", the chart injectsSSG_DATABASE_TYPE=h2into the Gateway container, enabling the H2 embedded database. This surfaces an existing capability in the Gateway container (entrypoint.sh) that was previously only configurable by passing the environment variable directly viaadditionalEnv.Benefits
additionalEnvworkarounds.SSG_DATABASE_TYPEis injected, preserving current Derby/MySQL behaviour.type: h2alongside a JDBC URL) produce clear error messages at container startup via existing entrypoint guards.How to use
To enable H2, set the following in your
values.yaml:To continue using Derby (default) or MySQL, no change is required. Omit
typeor leave it empty.Drawbacks
type: h2withdatabase.enabled: true) is not enforced at install time; misconfigurations are caught at container boot by the entrypoint.Applicable issues
Additional information
The Gateway container
entrypoint.shalready supported H2 viaSSG_DATABASE_TYPE=h2. This chart change simply exposes that knob through the standard values interface. Bothvalues.yamlandproduction-values.yamlhave been updated to keep the two files in sync.Checklist
Chart.yamlaccording to semver.[charts/gateway])values-production.yamlapart fromvalues.yaml, ensure that you implement the changes in both files