Add per-workload replicas values and a chart-global scaleDown flag
Every Deployment/StatefulSet now takes its replica count from a replicas value (default 1, explicit 0 allowed) via a new per-chart <chart>.replicas helper; the helper uses a kindIs "invalid" nil check so an explicit 0 is not swallowed by Helm's default function. A chart-global scaleDown flag (default false) takes precedence: it renders every workload with replicas: 0 and suspends the paperless-ngx consume CronJob, stopping the app without uninstalling it (PVCs, Secrets, Services and Ingress remain). Defaults leave the rendered manifests byte-identical to main, so all published charts get a minor version bump; the template-chart carries the reference helper implementation and stays unversioned. Fixes #25
This commit is contained in:
72 files changed
+728
-36
No files matched your search
@@ -78,4 +78,5 @@ For runtime verification (do the workloads actually start, do probes/security se
|
|||||||
- `env` entries in `values.yaml` are rendered through `tpl`, so values may contain Helm templating; `value`, `secretKeyRef` and `configMapKeyRef` forms are supported.
|
- `env` entries in `values.yaml` are rendered through `tpl`, so values may contain Helm templating; `value`, `secretKeyRef` and `configMapKeyRef` forms are supported.
|
||||||
- Hardened defaults: `automountServiceAccountToken: false`, non-root user, `readOnlyRootFilesystem: true`, all capabilities dropped, probes and resource requests always set. Pod and container contexts are configurable via `securityContext.pod` / `securityContext.container` in each chart's values; writable paths (e.g. `/tmp`, nginx cache dirs, s6-overlay's `/run`) are emptyDirs. Where an image cannot satisfy the full standard (e.g. Home Assistant must start as root for s6-overlay, paperless needs a root init container to hand over `/run`), the deviation is minimal and justified with a comment in that chart's `values.yaml`.
|
- Hardened defaults: `automountServiceAccountToken: false`, non-root user, `readOnlyRootFilesystem: true`, all capabilities dropped, probes and resource requests always set. Pod and container contexts are configurable via `securityContext.pod` / `securityContext.container` in each chart's values; writable paths (e.g. `/tmp`, nginx cache dirs, s6-overlay's `/run`) are emptyDirs. Where an image cannot satisfy the full standard (e.g. Home Assistant must start as root for s6-overlay, paperless needs a root init container to hand over `/run`), the deviation is minimal and justified with a comment in that chart's `values.yaml`.
|
||||||
- Resource requests ship as chart defaults and are user-overridable; limits are computed by a per-chart `_helpers.tpl` helper (reference implementation in `template-chart/templates/_helpers.tpl`): an explicitly set limit always wins, missing memory and ephemeral-storage limits default to `resources.limitFactor` × the request (factor default `3`), and a CPU limit is only rendered when set explicitly — otherwise CPU stays unlimited (it is compressible, throttling instead of OOM-killing). The helper is duplicated into every chart because charts have no dependencies.
|
- Resource requests ship as chart defaults and are user-overridable; limits are computed by a per-chart `_helpers.tpl` helper (reference implementation in `template-chart/templates/_helpers.tpl`): an explicitly set limit always wins, missing memory and ephemeral-storage limits default to `resources.limitFactor` × the request (factor default `3`), and a CPU limit is only rendered when set explicitly — otherwise CPU stays unlimited (it is compressible, throttling instead of OOM-killing). The helper is duplicated into every chart because charts have no dependencies.
|
||||||
|
- Replica counts and scale-to-zero: every Deployment/StatefulSet has a `replicas` value (default `1`, the values path per workload matches its section, e.g. `patchmon.frontend.replicas`) that also accepts an explicit `0` for per-workload fine control. In addition, every chart has a global `scaleDown` flag (default `false`): `scaleDown: true` takes precedence over all `replicas` values, renders every Deployment/StatefulSet with `replicas: 0` and suspends CronJobs (paperless-ngx consume job). `scaleDown` **stops** the app but does not uninstall it — PVCs, Secrets, Services and Ingress stay in place, and setting it back to `false` brings the workloads back up. Implemented via a per-chart `<chart>.replicas` helper in `_helpers.tpl` (reference in `template-chart`); the helper uses an explicit nil check (`kindIs "invalid"`) because Helm's `default` would swallow an explicit `0`.
|
||||||
- Charts have no dependencies (`charts/` directories are empty).
|
- Charts have no dependencies (`charts/` directories are empty).
|
||||||
@@ -4,5 +4,5 @@ description: A Helm chart to deploy Apache Tika on Kubernetes
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 7.0.0+up3.2.3.0.full
|
version: 7.1.0+up3.2.3.0.full
|
||||||
appVersion: "3.2.3.0-full"
|
appVersion: "3.2.3.0-full"
|
||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "apache-tika.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "apache-tika.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "apache-tika.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.tika.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
||||||
|
|||||||
@@ -1,4 +1,13 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
tika:
|
tika:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
# The official image runs as the dedicated user 35002:35002. /tmp is a
|
# The official image runs as the dedicated user 35002:35002. /tmp is a
|
||||||
# writable emptyDir because Tika writes temporary files while parsing.
|
# writable emptyDir because Tika writes temporary files while parsing.
|
||||||
securityContext:
|
securityContext:
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ type: application
|
|||||||
name: calibre-web-automated
|
name: calibre-web-automated
|
||||||
description: A Helm chart to deploy calibere-web-automated
|
description: A Helm chart to deploy calibere-web-automated
|
||||||
|
|
||||||
version: 3.0.0+upv4.0.6
|
version: 3.1.0+upv4.0.6
|
||||||
appVersion: v4.0.6
|
appVersion: v4.0.6
|
||||||
|
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "calibre-web-automated.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "calibre-web-automated.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -6,7 +6,7 @@ metadata:
|
|||||||
app: {{ .Chart.Name }}-{{ .Release.Name }}
|
app: {{ .Chart.Name }}-{{ .Release.Name }}
|
||||||
spec:
|
spec:
|
||||||
serviceName: {{ .Chart.Name }}-{{ .Release.Name }}-cwa-service
|
serviceName: {{ .Chart.Name }}-{{ .Release.Name }}-cwa-service
|
||||||
replicas: 1
|
replicas: {{ include "calibre-web-automated.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.cwa.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Chart.Name }}-{{ .Release.Name }}-cwa-sfs
|
app: {{ .Chart.Name }}-{{ .Release.Name }}-cwa-sfs
|
||||||
|
|||||||
@@ -1,7 +1,16 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
cwaSecretRef: null
|
cwaSecretRef: null
|
||||||
|
|
||||||
cwa:
|
cwa:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
storage: 10Gi
|
storage: 10Gi
|
||||||
storageClass: longhorn
|
storageClass: longhorn
|
||||||
timezone: "UTC"
|
timezone: "UTC"
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ description: A Helm chart to deploy Cyberchef on Kubernetes
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 4.0.0+up10.22.1
|
version: 4.1.0+up10.22.1
|
||||||
appVersion: "10.22.1"
|
appVersion: "10.22.1"
|
||||||
|
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "cyberchef.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "cyberchef.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "cyberchef.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.cyberchef.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
||||||
|
|||||||
@@ -1,4 +1,13 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
cyberchef:
|
cyberchef:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
# The upstream image is stock nginx (root, listening on port 80). To still
|
# The upstream image is stock nginx (root, listening on port 80). To still
|
||||||
# run fully non-root, the pod runs as the image's nginx user (uid 101) and
|
# run fully non-root, the pod runs as the image's nginx user (uid 101) and
|
||||||
# the safe sysctl net.ipv4.ip_unprivileged_port_start=80 lets the unprivileged
|
# the safe sysctl net.ipv4.ip_unprivileged_port_start=80 lets the unprivileged
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ description: A Helm chart to deploy Gotenberg on Kubernetes
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 4.0.0+up8.26.0
|
version: 4.1.0+up8.26.0
|
||||||
appVersion: "8.26.0"
|
appVersion: "8.26.0"
|
||||||
|
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "gotenberg.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "gotenberg.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "gotenberg.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.gotenberg.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
||||||
|
|||||||
@@ -1,4 +1,13 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
gotenberg:
|
gotenberg:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
# The official image runs as the dedicated gotenberg user (uid 1001). /tmp
|
# The official image runs as the dedicated gotenberg user (uid 1001). /tmp
|
||||||
# and /home/gotenberg are writable emptyDirs so Chromium/LibreOffice keep
|
# and /home/gotenberg are writable emptyDirs so Chromium/LibreOffice keep
|
||||||
# working with a read-only root filesystem.
|
# working with a read-only root filesystem.
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ name: homeassistant
|
|||||||
description: A Helm chart to deploy Home Assistant on Kubernetes
|
description: A Helm chart to deploy Home Assistant on Kubernetes
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 4.0.0+up2026.2.3
|
version: 4.1.0+up2026.2.3
|
||||||
|
|
||||||
appVersion: "2026.2.3"
|
appVersion: "2026.2.3"
|
||||||
|
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "homeassistant.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "homeassistant.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -6,7 +6,7 @@ metadata:
|
|||||||
app: "{{ .Release.Name }}-{{ .Chart.Name }}"
|
app: "{{ .Release.Name }}-{{ .Chart.Name }}"
|
||||||
spec:
|
spec:
|
||||||
serviceName: "{{ .Release.Name }}-{{ .Chart.Name }}-service"
|
serviceName: "{{ .Release.Name }}-{{ .Chart.Name }}-service"
|
||||||
replicas: 1
|
replicas: {{ include "homeassistant.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: "{{ .Release.Name }}-{{ .Chart.Name }}"
|
app: "{{ .Release.Name }}-{{ .Chart.Name }}"
|
||||||
|
|||||||
@@ -1,3 +1,13 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
|
|
||||||
# This is for setting up a service more information can be found here: https://kubernetes.io/docs/concepts/services-networking/service/
|
# This is for setting up a service more information can be found here: https://kubernetes.io/docs/concepts/services-networking/service/
|
||||||
service:
|
service:
|
||||||
# This sets the service type more information can be found here: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types
|
# This sets the service type more information can be found here: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ apiVersion: v2
|
|||||||
name: matrix-synapse
|
name: matrix-synapse
|
||||||
description: A Helm chart to deploy a Matrix Synapse server on Kubernetes
|
description: A Helm chart to deploy a Matrix Synapse server on Kubernetes
|
||||||
type: application
|
type: application
|
||||||
version: 4.0.0+upv1.149.1
|
version: 4.1.0+upv1.149.1
|
||||||
appVersion: "v1.149.1"
|
appVersion: "v1.149.1"
|
||||||
maintainers:
|
maintainers:
|
||||||
- name: jklein
|
- name: jklein
|
||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "matrix-synapse.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "matrix-synapse.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -6,7 +6,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-delegation-nginx
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-delegation-nginx
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "matrix-synapse.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.matrix.delegation.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-delegation-nginx
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-delegation-nginx
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ metadata:
|
|||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
||||||
spec:
|
spec:
|
||||||
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
||||||
replicas: 1
|
replicas: {{ include "matrix-synapse.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.matrix.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
||||||
|
|||||||
@@ -1,8 +1,20 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
serverName: null
|
serverName: null
|
||||||
timezone: UTC
|
timezone: UTC
|
||||||
configSecretRef: null
|
configSecretRef: null
|
||||||
delegation:
|
delegation:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
enabled: false
|
enabled: false
|
||||||
serverUrl: null
|
serverUrl: null
|
||||||
# The delegation nginx runs as the image's unprivileged nginx user
|
# The delegation nginx runs as the image's unprivileged nginx user
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@ description: A Helm chart to deploy Outline on Kubernetes
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 3.0.0+up1.9.2
|
version: 3.1.0+up1.9.2
|
||||||
appVersion: 1.9.2
|
appVersion: 1.9.2
|
||||||
|
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "outline.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "outline.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -6,7 +6,7 @@ metadata:
|
|||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
||||||
spec:
|
spec:
|
||||||
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
||||||
replicas: 1
|
replicas: {{ include "outline.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.outline.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
||||||
|
|||||||
@@ -1,8 +1,17 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
configSecretRef: null
|
configSecretRef: null
|
||||||
redisSecretRef: null
|
redisSecretRef: null
|
||||||
dbSecretRef: null
|
dbSecretRef: null
|
||||||
outline:
|
outline:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
maxUploadSize: '262144000'
|
maxUploadSize: '262144000'
|
||||||
forceHttps: 'false'
|
forceHttps: 'false'
|
||||||
oidc:
|
oidc:
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ description: A Helm chart to deploy Paperless-NGX on Kubernetes
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 7.0.0+up2.20.13
|
version: 7.1.0+up2.20.13
|
||||||
|
|
||||||
appVersion: 2.20.13
|
appVersion: 2.20.13
|
||||||
|
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "paperless-ngx.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "paperless-ngx.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,6 +5,9 @@ metadata:
|
|||||||
name: {{ .Release.Name }}-{{ .Chart.Name }}-consume-cronjob
|
name: {{ .Release.Name }}-{{ .Chart.Name }}-consume-cronjob
|
||||||
spec:
|
spec:
|
||||||
schedule: {{ .Values.smbConnection.cronJob }}
|
schedule: {{ .Values.smbConnection.cronJob }}
|
||||||
|
{{- if .Values.scaleDown }}
|
||||||
|
suspend: true
|
||||||
|
{{- end }}
|
||||||
jobTemplate:
|
jobTemplate:
|
||||||
spec:
|
spec:
|
||||||
template:
|
template:
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "paperless-ngx.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.paperless.replicas) }}
|
||||||
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
redisRef: null
|
redisRef: null
|
||||||
databaseRef: null
|
databaseRef: null
|
||||||
@@ -10,6 +16,9 @@ ingress:
|
|||||||
domain: null
|
domain: null
|
||||||
|
|
||||||
paperless:
|
paperless:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
ocr:
|
ocr:
|
||||||
languages: "eng"
|
languages: "eng"
|
||||||
mode: "skip"
|
mode: "skip"
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@ description: A Helm chart to deploy Patchmon on Kubernetes
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 4.0.0+up1.4.2
|
version: 4.1.0+up1.4.2
|
||||||
appVersion: "1.4.2"
|
appVersion: "1.4.2"
|
||||||
|
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "patchmon.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "patchmon.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-backend
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-backend
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "patchmon.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.patchmon.backend.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-backend
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-backend
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-frontend
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-frontend
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "patchmon.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.patchmon.frontend.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-frontend
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-frontend
|
||||||
|
|||||||
@@ -1,8 +1,17 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
patchmon:
|
patchmon:
|
||||||
storage:
|
storage:
|
||||||
size: 10Gi
|
size: 10Gi
|
||||||
storageClass: null
|
storageClass: null
|
||||||
frontend:
|
frontend:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
# The frontend image is based on nginx-unprivileged; the pod runs as its
|
# The frontend image is based on nginx-unprivileged; the pod runs as its
|
||||||
# nginx user (uid 101). The image's root-only init script (it would chown
|
# nginx user (uid 101). The image's root-only init script (it would chown
|
||||||
# the shared assets volume) is replaced by fsGroup 1000: the same group
|
# the shared assets volume) is replaced by fsGroup 1000: the same group
|
||||||
@@ -31,6 +40,9 @@ patchmon:
|
|||||||
memory: 128Mi
|
memory: 128Mi
|
||||||
ephemeral-storage: 10Mi
|
ephemeral-storage: 10Mi
|
||||||
backend:
|
backend:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
resources:
|
resources:
|
||||||
# Limits are optional: memory and ephemeral-storage limits default to
|
# Limits are optional: memory and ephemeral-storage limits default to
|
||||||
# limitFactor x the request, an explicitly set limit always wins, and a
|
# limitFactor x the request, an explicitly set limit always wins, and a
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@ description: A Helm chart to deploy Rallly on Kubernetes
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 3.0.0+up4.8.1
|
version: 3.1.0+up4.8.1
|
||||||
appVersion: "4.8.1"
|
appVersion: "4.8.1"
|
||||||
|
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "rallly.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "rallly.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}
|
app: {{ .Release.Name }}-{{ .Chart.Name }}
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "rallly.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.rallly.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}
|
app: {{ .Release.Name }}-{{ .Chart.Name }}
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
ralllySecretRef: null
|
ralllySecretRef: null
|
||||||
oidcSecretRef: null
|
oidcSecretRef: null
|
||||||
@@ -5,6 +11,9 @@ secrets:
|
|||||||
smtpSecretRef: null
|
smtpSecretRef: null
|
||||||
|
|
||||||
rallly:
|
rallly:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
smtp:
|
smtp:
|
||||||
enabled: false
|
enabled: false
|
||||||
allowedEmails: '*'
|
allowedEmails: '*'
|
||||||
|
|||||||
+1
-1
@@ -4,6 +4,6 @@ description: A Helm chart for Samba
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 3.0.0+up4.23.5
|
version: 3.1.0+up4.23.5
|
||||||
|
|
||||||
appVersion: 4.23.5
|
appVersion: 4.23.5
|
||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "samba.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "samba.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "samba.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.samba.replicas) }}
|
||||||
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
|
|||||||
@@ -1,7 +1,16 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
sambaUsersRef: null
|
sambaUsersRef: null
|
||||||
|
|
||||||
samba:
|
samba:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
shares:
|
shares:
|
||||||
- name: null
|
- name: null
|
||||||
validUsers: null
|
validUsers: null
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ apiVersion: v2
|
|||||||
name: satisfactory
|
name: satisfactory
|
||||||
description: A Helm chart to deploy a Satisfactory Gameserver on Kubernetes
|
description: A Helm chart to deploy a Satisfactory Gameserver on Kubernetes
|
||||||
type: application
|
type: application
|
||||||
version: 3.0.0+upv1.9.10
|
version: 3.1.0+upv1.9.10
|
||||||
appVersion: "v1.9.10"
|
appVersion: "v1.9.10"
|
||||||
maintainers:
|
maintainers:
|
||||||
- name: jklein
|
- name: jklein
|
||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "satisfactory.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "satisfactory.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -7,7 +7,7 @@ spec:
|
|||||||
matchLabels:
|
matchLabels:
|
||||||
app: "{{ .Release.Name }}-{{ .Chart.Name }}-sf-server"
|
app: "{{ .Release.Name }}-{{ .Chart.Name }}-sf-server"
|
||||||
serviceName: "{{ .Release.Name }}-{{ .Chart.Name }}-sf-service"
|
serviceName: "{{ .Release.Name }}-{{ .Chart.Name }}-sf-service"
|
||||||
replicas: 1
|
replicas: {{ include "satisfactory.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.server.replicas) }}
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
dev:
|
dev:
|
||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
@@ -7,6 +13,9 @@ game:
|
|||||||
seasonalEvents: true
|
seasonalEvents: true
|
||||||
|
|
||||||
server:
|
server:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
gamePort: 30777
|
gamePort: 30777
|
||||||
messagingPort: 30888
|
messagingPort: 30888
|
||||||
storage: 20Gi
|
storage: 20Gi
|
||||||
|
|||||||
@@ -4,5 +4,5 @@ description: A Helm chart for deploying a teamspeak-server on Kubernetes
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 3.0.0+upv6.0.0.beta8
|
version: 3.1.0+upv6.0.0.beta8
|
||||||
appVersion: "v6.0.0-beta8"
|
appVersion: "v6.0.0-beta8"
|
||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "teamspeak-server.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "teamspeak-server.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}
|
app: {{ .Release.Name }}
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "teamspeak-server.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-server-sfs
|
app: {{ .Release.Name }}-server-sfs
|
||||||
|
|||||||
@@ -1,3 +1,13 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
# Limits are optional: memory and ephemeral-storage limits default to
|
# Limits are optional: memory and ephemeral-storage limits default to
|
||||||
# limitFactor x the request, an explicitly set limit always wins, and a
|
# limitFactor x the request, an explicitly set limit always wins, and a
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "xxx.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "xxx.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "xxx.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.xxx.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-deployment
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "xxx.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.xxx.replicas) }}
|
||||||
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
|
|||||||
@@ -1,7 +1,16 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
xxxSecretRef: null
|
xxxSecretRef: null
|
||||||
|
|
||||||
xxx:
|
xxx:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
resources:
|
resources:
|
||||||
# Limits are optional: memory and ephemeral-storage limits default to
|
# Limits are optional: memory and ephemeral-storage limits default to
|
||||||
# limitFactor x the request, an explicitly set limit always wins, and a
|
# limitFactor x the request, an explicitly set limit always wins, and a
|
||||||
|
|||||||
@@ -3,5 +3,5 @@ name: urlaubsverwaltung
|
|||||||
description: A Helm chart to deploy urlaubsverwaltung on Kubernetes
|
description: A Helm chart to deploy urlaubsverwaltung on Kubernetes
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 4.0.0+up6.5.0
|
version: 4.1.0+up6.5.0
|
||||||
appVersion: 6.5.0
|
appVersion: 6.5.0
|
||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "urlaubsverwaltung.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "urlaubsverwaltung.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Chart.Name }}-{{ .Release.Name }}
|
app: {{ .Chart.Name }}-{{ .Release.Name }}
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "urlaubsverwaltung.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.urlaubsverwaltung.replicas) }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Chart.Name }}-{{ .Release.Name }}-uv-deployment
|
app: {{ .Chart.Name }}-{{ .Release.Name }}-uv-deployment
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
databaseSecretRef: null
|
databaseSecretRef: null
|
||||||
oidcSecretRef: null
|
oidcSecretRef: null
|
||||||
@@ -7,6 +13,9 @@ ingress:
|
|||||||
domain: null
|
domain: null
|
||||||
|
|
||||||
urlaubsverwaltung:
|
urlaubsverwaltung:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
# The official image is built with Cloud Native Buildpacks and runs as the
|
# The official image is built with Cloud Native Buildpacks and runs as the
|
||||||
# non-root cnb user (uid 1002, gid 1001). /tmp is a writable emptyDir for
|
# non-root cnb user (uid 1002, gid 1001). /tmp is a writable emptyDir for
|
||||||
# the JVM's temp/work files.
|
# the JVM's temp/work files.
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ description: A Helm chart to deploy VoucherVault on Kubernetes
|
|||||||
|
|
||||||
type: application
|
type: application
|
||||||
|
|
||||||
version: 3.0.0+up1.27.4
|
version: 3.1.0+up1.27.4
|
||||||
appVersion: "1.27.4"
|
appVersion: "1.27.4"
|
||||||
|
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "voucher-vault.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "voucher-vault.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
app: {{ .Release.Name }}-{{ .Chart.Name }}-sfs
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: {{ include "voucher-vault.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.voucherVault.replicas) }}
|
||||||
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
serviceName: {{ .Release.Name }}-{{ .Chart.Name }}-service
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
|
|||||||
@@ -1,9 +1,18 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
voucherVaultSecretRef: null
|
voucherVaultSecretRef: null
|
||||||
oidcSecretRef: null
|
oidcSecretRef: null
|
||||||
databaseSecretRef: null
|
databaseSecretRef: null
|
||||||
|
|
||||||
voucherVault:
|
voucherVault:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
resources:
|
resources:
|
||||||
# Limits are optional: memory and ephemeral-storage limits default to
|
# Limits are optional: memory and ephemeral-storage limits default to
|
||||||
# limitFactor x the request, an explicitly set limit always wins, and a
|
# limitFactor x the request, an explicitly set limit always wins, and a
|
||||||
|
|||||||
+1
-1
@@ -15,7 +15,7 @@ type: application
|
|||||||
# This is the chart version. This version number should be incremented each time you make changes
|
# This is the chart version. This version number should be incremented each time you make changes
|
||||||
# to the chart and its templates, including the app version.
|
# to the chart and its templates, including the app version.
|
||||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||||
version: 4.0.0+up4.6.4
|
version: 4.1.0+up4.6.4
|
||||||
|
|
||||||
# This is the version number of the application being deployed. This version number should be
|
# This is the version number of the application being deployed. This version number should be
|
||||||
# incremented each time you make changes to the application. Versions are not expected to
|
# incremented each time you make changes to the application. Versions are not expected to
|
||||||
|
|||||||
@@ -83,3 +83,34 @@ results are printed without a decimal point.
|
|||||||
{{- printf "%v%s" $product $suffix -}}
|
{{- printf "%v%s" $product $suffix -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render the replica count for a Deployment/StatefulSet.
|
||||||
|
|
||||||
|
Input: dict
|
||||||
|
"scaleDown" the chart-global .Values.scaleDown flag (may be nil)
|
||||||
|
"replicas" the workload's replicas value (may be nil)
|
||||||
|
|
||||||
|
Rules (issue #25):
|
||||||
|
- scaleDown: true takes precedence and always yields 0.
|
||||||
|
- otherwise an explicitly set replicas value is used as given, including an
|
||||||
|
explicit 0 — Helm's "default" would swallow 0, hence the explicit
|
||||||
|
kindIs "invalid" nil check.
|
||||||
|
- a missing replicas value defaults to 1.
|
||||||
|
|
||||||
|
Usage (the values path to the workload's replicas varies per chart):
|
||||||
|
replicas: {{ include "zipline.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.<app>.replicas) }}
|
||||||
|
|
||||||
|
NOTE: like the resources helper above, this is duplicated into every chart's
|
||||||
|
templates/_helpers.tpl with the chart's name as define prefix. This file in
|
||||||
|
template-chart is the reference implementation.
|
||||||
|
*/}}
|
||||||
|
{{- define "zipline.replicas" -}}
|
||||||
|
{{- if .scaleDown -}}
|
||||||
|
0
|
||||||
|
{{- else if not (kindIs "invalid" .replicas) -}}
|
||||||
|
{{- .replicas -}}
|
||||||
|
{{- else -}}
|
||||||
|
1
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
@@ -7,7 +7,7 @@ spec:
|
|||||||
matchLabels:
|
matchLabels:
|
||||||
app: "{{ .Release.Name }}-{{ .Chart.Name }}-sfs"
|
app: "{{ .Release.Name }}-{{ .Chart.Name }}-sfs"
|
||||||
serviceName: "{{ .Release.Name }}-{{ .Chart.Name }}-service"
|
serviceName: "{{ .Release.Name }}-{{ .Chart.Name }}-service"
|
||||||
replicas: 1
|
replicas: {{ include "zipline.replicas" (dict "scaleDown" .Values.scaleDown "replicas" .Values.zipline.replicas) }}
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
# Scale the whole chart down without uninstalling it: scaleDown: true renders
|
||||||
|
# every Deployment/StatefulSet with replicas: 0 (and suspends CronJobs) and
|
||||||
|
# takes precedence over any per-workload replicas value. PVCs, Secrets and
|
||||||
|
# Services stay in place; scaleDown: false brings the workloads back up.
|
||||||
|
scaleDown: false
|
||||||
|
|
||||||
config:
|
config:
|
||||||
storage: 50Gi
|
storage: 50Gi
|
||||||
storageClass: longhorn
|
storageClass: longhorn
|
||||||
@@ -7,6 +13,9 @@ config:
|
|||||||
domain: null
|
domain: null
|
||||||
maxUploadFileSize: 30m
|
maxUploadFileSize: 30m
|
||||||
zipline:
|
zipline:
|
||||||
|
# Replica count for this workload; 0 is allowed and scales it down.
|
||||||
|
# The chart-global scaleDown flag takes precedence.
|
||||||
|
replicas: 1
|
||||||
# The upstream image ships no dedicated user, but the Node.js server runs
|
# The upstream image ships no dedicated user, but the Node.js server runs
|
||||||
# fine as an arbitrary non-root uid; fsGroup makes the uploads PVC writable.
|
# fine as an arbitrary non-root uid; fsGroup makes the uploads PVC writable.
|
||||||
securityContext:
|
securityContext:
|
||||||
|
|||||||
Reference in new issue
Block a user