This commit introduces a new Helm chart for deploying calibre-web on Kubernetes. The chart includes essential templates for deployment, service, ingress, and persistent volume claims, along with default values configured in a `values.yaml` file. The addition of the Helm chart enables easier deployment and management of calibre-web, allowing users to customize settings like the replica count, image settings, service type, and storage options through the `values.yaml`. A GitHub Actions workflow (`build-chart-calibre-web.yml`) is also included to automate the packaging and uploading of the Helm chart upon updates to the main branch. The structure and organization of the templates adhere to Helm best practices, ensuring compatibility and ease of use. There are no breaking changes associated with this addition, but users should review the `values.yaml` for configurable options.
45 lines
1.3 KiB
YAML
45 lines
1.3 KiB
YAML
{{- if not .Values.persistence.config.claimName }}
|
|
apiVersion: v1
|
|
kind: PersistentVolumeClaim
|
|
metadata:
|
|
name: {{ template "calibre-web.fullname" . }}-config
|
|
labels:
|
|
app: {{ template "calibre-web.name" . }}
|
|
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
|
release: {{ .Release.Name }}
|
|
heritage: {{ .Release.Service }}
|
|
component: config
|
|
spec:
|
|
accessModes:
|
|
- ReadWriteMany
|
|
resources:
|
|
requests:
|
|
storage: {{ .Values.persistence.config.size | quote }}
|
|
{{- if .Values.persistence.config.storageClass }}
|
|
storageClassName: {{ .Values.persistence.config.storageClass | quote }}
|
|
{{- end }}
|
|
---
|
|
{{- end }}
|
|
{{- if not .Values.persistence.data.claimName }}
|
|
apiVersion: v1
|
|
kind: PersistentVolumeClaim
|
|
metadata:
|
|
name: {{ template "calibre-web.fullname" . }}-data
|
|
labels:
|
|
app: {{ template "calibre-web.name" . }}
|
|
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
|
release: {{ .Release.Name }}
|
|
heritage: {{ .Release.Service }}
|
|
component: data
|
|
spec:
|
|
accessModes:
|
|
- ReadWriteMany
|
|
resources:
|
|
requests:
|
|
storage: {{ .Values.persistence.data.size | quote }}
|
|
{{- if .Values.persistence.data.storageClass }}
|
|
storageClassName: {{ .Values.persistence.data.storageClass | quote }}
|
|
{{- end }}
|
|
---
|
|
{{- end }}
|