Deploying to OpenShift / Kubernetes¶
The real Dockerfile (multi-stage: Angular build → .NET build → runtime, port
5200) lives at Dockerfile.
A full Helm chart is available under
charts/hodor — it
creates a Deployment, Service, an OpenShift Route (or Ingress on plain
Kubernetes), a PersistentVolumeClaim for /data (pipelines + Data Protection
keys), and a Secret for the database password, JWT key, OIDC client secret and
SMTP password:
helm install hodor charts/hodor \
--set database.provider=Postgres \
--set database.connectionString="Host=postgres;Database=hodor;Username=hodor;Password=..." \
--set defaultAdmin.password="ChangeMe123!"
See charts/hodor/README.md
for the full set of values, including how to point at your own Secret
(existingSecret) or enable SMTP run notifications (email.enabled=true) or
Microsoft Teams notifications (teams.enabled=true, teams.webhookUrl=…). Teams
posts run outcomes (including any data-quality warnings) to one channel's
incoming webhook, on the same per-pipeline opt-in as email.
Security¶
- Use Windows authentication (
Trusted_Connection=True) for on-prem SQL Server —.hodorfiles will contain no secrets and can be checked into git safely. - CORS is open by default in development. Restrict with
AllowedOriginsin production. - Report vulnerabilities via SECURITY.md.
Licence and contributing¶
Hodor is licenced under EUPL-1.2 — see LICENSE. Contributions are welcome from everyone. See CONTRIBUTING.md.