feat: Add Helm chart for Kubernetes deployment (#1)
## Description Add complete Helm chart for deploying the CV application to Kubernetes. The chart includes all necessary resources for a production-ready deployment with persistent storage and configurable authentication modes. ## Type of Change - [x] `feat` - New feature (minor version bump) ## Breaking Changes - [ ] This is a breaking change (major version bump) **If breaking, describe the migration path:** ## Checklist - [x] Commit messages follow [Conventional Commits](CONTRIBUTING.md#commit-guidelines) - [x] Lint passes (`npm run lint`) - N/A for Helm charts - [x] Build succeeds (`npm run build`) - N/A for Helm charts - [x] Tests pass (`npm run test:run`) - N/A for Helm charts - [ ] API documentation updated (if applicable) ## Testing - `helm lint` passes on the chart - `helm template test-release helm/cv-app/` renders 214 lines of valid Kubernetes manifests - Verified all template helpers function correctly - Tested conditional rendering (persistence enabled/disabled, simple/keycloak auth modes) ## Screenshots (if applicable) N/A ## Related Issues Implements the Helm chart design from `docs/plans/2026-02-23-helm-chart-design.md` Co-authored-by: Tuan-Dat Tran <tuan-dat.tran@tudattr.dev> Reviewed-on: #1
This commit was merged in pull request #1.
This commit is contained in:
27
helm/cv-app/templates/NOTES.txt
Normal file
27
helm/cv-app/templates/NOTES.txt
Normal file
@@ -0,0 +1,27 @@
|
||||
Your CV application has been deployed!
|
||||
|
||||
Access your application at:
|
||||
{{- if .Values.ingress.enabled }}
|
||||
{{- range $host := .Values.ingress.hosts }}
|
||||
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
Frontend: http://{{ include "cv-app.fullname" . }}-frontend.{{ .Release.Namespace }}.svc.cluster.local
|
||||
Backend API: http://{{ include "cv-app.fullname" . }}-backend.{{ .Release.Namespace }}.svc.cluster.local:3001
|
||||
{{- end }}
|
||||
|
||||
{{- if eq .Values.backend.auth.mode "simple" }}
|
||||
Get the admin password:
|
||||
kubectl logs deployment/{{ include "cv-app.fullname" . }}-backend | grep "ADMIN PASSWORD"
|
||||
{{- end }}
|
||||
|
||||
API Documentation:
|
||||
{{- if .Values.ingress.enabled }}
|
||||
{{- if .Values.ingress.tls }}
|
||||
https://{{ (index .Values.ingress.hosts 0).host }}/api/docs
|
||||
{{- else }}
|
||||
http://{{ (index .Values.ingress.hosts 0).host }}/api/docs
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
http://{{ include "cv-app.fullname" . }}-backend.{{ .Release.Namespace }}.svc.cluster.local:3001/api/docs
|
||||
{{- end }}
|
||||
Reference in New Issue
Block a user