diff --git a/charts/stable/clamav/Chart.yaml b/charts/stable/clamav/Chart.yaml
index 2698108cddf..b6dc3e72e43 100644
--- a/charts/stable/clamav/Chart.yaml
+++ b/charts/stable/clamav/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "1.0.1"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
description: ClamAV is an open source antivirus engine for detecting trojans, viruses, malware & other malicious threats.
home: https://truecharts.org/charts/stable/clamav
icon: https://truecharts.org/img/hotlink-ok/chart-icons/clamav.png
@@ -21,9 +21,8 @@ sources:
- https://github.com/Cisco-Talos/clamav
- https://docs.clamav.net/
type: application
-version: 5.0.16
+version: 6.0.0
annotations:
truecharts.org/catagories: |
- utilities
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/clamav/questions.yaml b/charts/stable/clamav/questions.yaml
index e91debd615a..78122c57861 100644
--- a/charts/stable/clamav/questions.yaml
+++ b/charts/stable/clamav/questions.yaml
@@ -8,46 +8,46 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: CLAMAV_NO_CLAMD
+ label: "NO CLAMD"
+ description: "Do not start clamd."
+ schema:
+ type: boolean
+ default: false
+ - variable: CLAMAV_NO_FRESHCLAMD
+ label: "NO FRESHCLAMD"
+ description: "Do not start the freshclam daemon."
+ schema:
+ type: boolean
+ default: false
+ - variable: CLAMAV_NO_MILTERD
+ label: "NO MILTERD"
+ description: "Do not start the clamav-milter daemon."
+ schema:
+ type: boolean
+ default: true
+ - variable: CLAMD_STARTUP_TIMEOUT
+ label: "STARTUP TIMEOUT"
+ description: "Seconds to wait for clamd to start."
+ schema:
+ type: int
+ default: 1800
+ - variable: FRESHCLAM_CHECKS
+ label: "FRESHCLAM CHECKS "
+ description: "Freshclam daily update frequency."
+ schema:
+ type: int
+ default: 1
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: env
- group: "App Configuration"
- label: "Image Environment"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: CLAMAV_NO_CLAMD
- label: "NO CLAMD"
- description: "Do not start clamd."
- schema:
- type: boolean
- default: false
- - variable: CLAMAV_NO_FRESHCLAMD
- label: "NO FRESHCLAMD"
- description: "Do not start the freshclam daemon."
- schema:
- type: boolean
- default: false
- - variable: CLAMAV_NO_MILTERD
- label: "NO MILTERD"
- description: "Do not start the clamav-milter daemon."
- schema:
- type: boolean
- default: true
- - variable: CLAMD_STARTUP_TIMEOUT
- label: "STARTUP TIMEOUT"
- description: "Seconds to wait for clamd to start."
- schema:
- type: int
- default: 1800
- - variable: FRESHCLAM_CHECKS
- label: "FRESHCLAM CHECKS "
- description: "Freshclam daily update frequency."
- schema:
- type: int
- default: 1
- variable: clamav
group: "App Configuration"
label: "ClamAV Cron Configuration"
@@ -99,7 +99,9 @@ questions:
schema:
type: string
default: ""
+
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -194,12 +196,12 @@ questions:
schema:
type: int
default: 0
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/clamav/templates/NOTES.txt b/charts/stable/clamav/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/clamav/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/clamav/templates/_cronjob.tpl b/charts/stable/clamav/templates/_cronjob.tpl
index 7109a625870..b2b2a65ac79 100644
--- a/charts/stable/clamav/templates/_cronjob.tpl
+++ b/charts/stable/clamav/templates/_cronjob.tpl
@@ -1,85 +1,60 @@
{{/* Define the cronjob */}}
{{- define "clamav.cronjob" -}}
-{{- $jobName := include "tc.common.names.fullname" . }}
-
----
-apiVersion: batch/v1
-kind: CronJob
-metadata:
- name: {{ printf "%s-cronjob" $jobName }}
- labels:
- {{- include "tc.common.labels" . | nindent 4 }}
-spec:
- schedule: "{{ .Values.clamav.cron_schedule }}"
- concurrencyPolicy: Forbid
- {{- with .Values.cronjob.failedJobsHistoryLimit }}
- failedJobsHistoryLimit: {{ . }}
- {{- end }}
- {{- with .Values.cronjob.successfulJobsHistoryLimit }}
- successfulJobsHistoryLimit: {{ . }}
- {{- end }}
- jobTemplate:
- metadata:
- spec:
- template:
- metadata:
- spec:
- restartPolicy: Never
- {{- with (include "tc.common.controller.volumes" . | trim) }}
- volumes:
- {{- nindent 12 . }}
- {{- end }}
- containers:
- - name: {{ .Chart.Name }}
- image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
- env:
- - name: date_format
- value: {{ .Values.clamav.date_format }}
- - name: log_file_name
- value: {{ .Values.clamav.log_file_name }}
- - name: report_path
- value: {{ .Values.clamav.report_path | trimSuffix "/" }}
- - name: extra_args
- value: {{ .Values.clamav.extra_args }}
- command: ["sh", "-c"]
- args:
- - >
- export databasePath=/var/lib/clamav;
- if [ "$(ls -A $databasePath)" ];
- then
- echo "Virus database exists...";
- else
- echo "Virus database does not exist yet...";
- echo "Exiting...";
- exit 1;
- fi;
- export status=99;
- export now=$(date ${date_format});
- export log_file=$report_path/${log_file_name}_${now};
- touch $log_file;
- echo "Starting scan of \"/scandir\"";
- echo "Args for clamscan: --database=${databasePath} --log=$log_file --recursive ${extra_args}";
- clamscan --database=${databasePath} --log=$log_file --recursive ${extra_args} /scandir;
- status=$?;
- if [ $status -eq 0 ];
- then
- echo "Exit Status: $status";
- echo "No Virus found!";
- elif [ $status -eq 1 ];
- then
- echo "Exit Status: $status.";
- echo "Virus(es) found. Check \"${log_file}\".";
- elif [ $status -eq 2 ];
- then
- echo "Exit Status: $status.";
- echo "Some error(s) occured.";
- else
- echo "Exit Status: $status.";
- fi;
- {{- with (include "tc.common.controller.volumeMounts" . | trim) }}
- volumeMounts:
- {{ nindent 16 . }}
- {{- end }}
- resources:
-{{ toYaml .Values.resources | indent 16 }}
+enabled: true
+type: "CronJob"
+schedule: "0 8 * * *"
+podSpec:
+ restartPolicy: Never
+ containers:
+ cron:
+ enabled: true
+ primary: true
+ imageSelector: "image"
+ env:
+ date_format: {{ .Values.clamav.date_format }}
+ log_file_name: {{ .Values.clamav.log_file_name }}
+ report_path: {{ .Values.clamav.report_path | trimSuffix "/" }}
+ extra_args: {{ .Values.clamav.extra_args }}
+ command: ["sh", "-c"]
+ probes:
+ liveness:
+ enabled: false
+ readiness:
+ enabled: false
+ startup:
+ enabled: false
+ args:
+ - >
+ export databasePath=/var/lib/clamav;
+ if [ "$(ls -A $databasePath)" ];
+ then
+ echo "Virus database exists...";
+ else
+ echo "Virus database does not exist yet...";
+ echo "Exiting...";
+ exit 1;
+ fi;
+ export status=99;
+ export now=$(date ${date_format});
+ export log_file=$report_path/${log_file_name}_${now};
+ touch $log_file;
+ echo "Starting scan of \"/scandir\"";
+ echo "Args for clamscan: --database=${databasePath} --log=$log_file --recursive ${extra_args}";
+ clamscan --database=${databasePath} --log=$log_file --recursive ${extra_args} /scandir;
+ status=$?;
+ if [ $status -eq 0 ];
+ then
+ echo "Exit Status: $status";
+ echo "No Virus found!";
+ elif [ $status -eq 1 ];
+ then
+ echo "Exit Status: $status.";
+ echo "Virus(es) found. Check \"${log_file}\".";
+ elif [ $status -eq 2 ];
+ then
+ echo "Exit Status: $status.";
+ echo "Some error(s) occured.";
+ else
+ echo "Exit Status: $status.";
+ fi;
{{- end -}}
diff --git a/charts/stable/clamav/templates/common.yaml b/charts/stable/clamav/templates/common.yaml
index af85bfa2b33..3c492bceaf0 100644
--- a/charts/stable/clamav/templates/common.yaml
+++ b/charts/stable/clamav/templates/common.yaml
@@ -1,10 +1,13 @@
{{/* Make sure all variables are set properly */}}
-{{- include "tc.common.loader.init" . }}
+{{- include "tc.v1.common.loader.init" . }}
{{- if and .Values.clamav.cron_enabled .Values.clamav.cron_schedule}}
{{/* Render cronjob for clamav */}}
-{{- include "clamav.cronjob" . }}
+{{- $cronjob := include "clamav.cronjob" . | fromYaml -}}
+{{- if $cronjob -}}
+{{- $_ := set .Values.workload "cron" $cronjob -}}
+{{- end -}}
{{- end -}}
{{/* Render the templates */}}
-{{ include "tc.common.loader.apply" . }}
+{{ include "tc.v1.common.loader.apply" . }}
diff --git a/charts/stable/clamav/values.yaml b/charts/stable/clamav/values.yaml
index bc33507cf6d..341ee7b007d 100644
--- a/charts/stable/clamav/values.yaml
+++ b/charts/stable/clamav/values.yaml
@@ -3,58 +3,29 @@ image:
pullPolicy: IfNotPresent
tag: 1.0.1@sha256:6f09199cb0e4ef83356dfe08c5d19d6af65513c3e73792312068036925acda75
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
-
securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
-
-env:
- CLAMAV_NO_CLAMD: false
- CLAMAV_NO_FRESHCLAMD: false
- CLAMAV_NO_MILTERD: true
- CLAMD_STARTUP_TIMEOUT: 1800
- FRESHCLAM_CHECKS: 1
+ container:
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
clamav:
report_path: "/logs"
# User Defined
+
cron_enabled: true
cron_schedule: "* * * * *"
date_format: "+%m-%d-%Y_%H.%M.%S"
log_file_name: "clamscan_report"
extra_args: ""
-probes:
- liveness:
- enabled: true
- custom: true
- spec:
- exec:
- command:
- - clamdcheck.sh
- readiness:
- enabled: true
- custom: true
- spec:
- exec:
- command:
- - clamdcheck.sh
- startup:
- enabled: true
- custom: true
- spec:
- exec:
- command:
- - clamdcheck.sh
-
service:
main:
ports:
main:
port: 3310
+ protocol: http
targetPort: 3310
milter:
enabled: true
@@ -62,6 +33,7 @@ service:
milter:
enabled: true
port: 7357
+ protocol: http
targetPort: 7357
cronjob:
@@ -69,17 +41,49 @@ cronjob:
failedJobsHistoryLimit: 5
successfulJobsHistoryLimit: 2
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ probes:
+ liveness:
+ enabled: true
+ type: exec
+ command:
+ - clamdcheck.sh
+ readiness:
+ enabled: true
+ type: exec
+ command:
+ - clamdcheck.sh
+ startup:
+ enabled: true
+ type: exec
+ command:
+ - clamdcheck.sh
+ env:
+ CLAMAV_NO_CLAMD: false
+ CLAMAV_NO_FRESHCLAMD: false
+ CLAMAV_NO_MILTERD: true
+ CLAMD_STARTUP_TIMEOUT: 1800
+ FRESHCLAM_CHECKS: 1
+
persistence:
sigdatabase:
enabled: true
- mountPath: "/var/lib/clamav"
+ mountPath: /var/lib/clamav
+ targetSelectAll: true
scandir:
enabled: true
- mountPath: "/scandir"
+ mountPath: /scandir
readOnly: true
+ targetSelectAll: true
logs:
enabled: true
- mountPath: "/logs"
+ mountPath: /logs
+ targetSelectAll: true
portal:
- enabled: false
+ open:
+ enabled: false
diff --git a/charts/stable/commento-plusplus/Chart.yaml b/charts/stable/commento-plusplus/Chart.yaml
index c54e16448b6..0df70129264 100644
--- a/charts/stable/commento-plusplus/Chart.yaml
+++ b/charts/stable/commento-plusplus/Chart.yaml
@@ -3,11 +3,8 @@ appVersion: "1.8.7"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
- - condition: postgresql.enabled
- name: postgresql
- repository: https://deps.truecharts.org/
- version: 11.0.31
+ version: 12.6.1
+
description: Commento++ is a free, open source, fast & lightweight comments box that you can embed in your static website instead of Disqus.
home: https://truecharts.org/charts/stable/commento-plusplus
icon: https://truecharts.org/img/hotlink-ok/chart-icons/commento-plusplus.png
@@ -22,9 +19,8 @@ name: commento-plusplus
sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/commento-plusplus
- https://github.com/souramoo/commentoplusplus
-version: 6.0.23
+version: 7.0.0
annotations:
truecharts.org/catagories: |
- media
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/commento-plusplus/questions.yaml b/charts/stable/commento-plusplus/questions.yaml
index 45dfe516702..6f397fef700 100644
--- a/charts/stable/commento-plusplus/questions.yaml
+++ b/charts/stable/commento-plusplus/questions.yaml
@@ -10,90 +10,91 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: COMMENTO_ORIGIN
+ label: "COMMENTO_ORIGIN"
+ description: "This should be set to the subdomain or the IP address hosting Commento. All API requests will go to this server. This may include subdirectories if Commento is hosted behind a reverse proxy, for example. Include the protocol in the value to use HTTP/HTTPS."
+ schema:
+ type: string
+ default: ""
+ - variable: COMMENTO_FORBID_NEW_OWNERS
+ label: "COMMENTO_FORBID_NEW_OWNERS"
+ description: "Used to disable new dashboard registrations. Useful if you are the only person using Commento on your server. Does not impact the creation of accounts for your readers."
+ schema:
+ type: boolean
+ default: false
+ - variable: COMMENTO_GZIP_STATIC
+ label: "COMMENTO_GZIP_STATIC"
+ schema:
+ type: boolean
+ default: true
+ - variable: COMMENTO_ENABLE_WILDCARDS
+ label: "COMMENTO_ENABLE_WILDCARDS"
+ description: "Allows use of wildcards in domain names in the admin dashboard. (e.g. if you share your commento instance with more than one admin/allow new registrations)"
+ schema:
+ type: boolean
+ default: true
+ - variable: COMMENTO_ENABLE_LOGGING
+ label: "COMMENTO_ENABLE_LOGGING"
+ description: "Should we log every page view? This will allow you to see stats but will fill up your free postgres database quite quickly."
+ schema:
+ type: boolean
+ default: false
+ - variable: smpt_config
+ label: "Enable SMTP"
+ schema:
+ type: boolean
+ default: false
+ show_subquestions_if: true
+ subquestions:
+ - variable: SMTP_SKIP_HOST_VERIFY
+ label: "SMTP_SKIP_HOST_VERIFY"
+ description: "Allows skipping of host verification for SMTP email sending."
+ schema:
+ type: boolean
+ default: false
+ - variable: COMMENTO_SMTP_USERNAME
+ label: "COMMENTO_SMTP_USERNAME"
+ description: "SMTP credentials and configuration the server should use to send emails."
+ schema:
+ type: string
+ default: ""
+ - variable: COMMENTO_SMTP_PASSWORD
+ label: "COMMENTO_SMTP_PASSWORD"
+ description: "SMTP credentials and configuration the server should use to send emails."
+ schema:
+ type: string
+ private: true
+ default: ""
+ - variable: COMMENTO_SMTP_HOST
+ label: "COMMENTO_SMTP_HOST"
+ description: "SMTP credentials and configuration the server should use to send emails."
+ schema:
+ type: string
+ default: ""
+ - variable: COMMENTO_SMTP_FROM_ADDRESS
+ label: "COMMENTO_SMTP_FROM_ADDRESS"
+ description: "SMTP credentials and configuration the server should use to send emails."
+ schema:
+ type: string
+ default: ""
+ - variable: COMMENTO_SMTP_PORT
+ label: "COMMENTO_SMTP_PORT"
+ description: "SMTP credentials and configuration the server should use to send emails."
+ schema:
+ type: int
+ default: 587
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: env
- group: "App Configuration"
- label: "Image Environment"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: COMMENTO_ORIGIN
- label: "COMMENTO_ORIGIN"
- description: "This should be set to the subdomain or the IP address hosting Commento. All API requests will go to this server. This may include subdirectories if Commento is hosted behind a reverse proxy, for example. Include the protocol in the value to use HTTP/HTTPS."
- schema:
- type: string
- default: ""
- - variable: COMMENTO_FORBID_NEW_OWNERS
- label: "COMMENTO_FORBID_NEW_OWNERS"
- description: "Used to disable new dashboard registrations. Useful if you are the only person using Commento on your server. Does not impact the creation of accounts for your readers."
- schema:
- type: boolean
- default: false
- - variable: COMMENTO_GZIP_STATIC
- label: "COMMENTO_GZIP_STATIC"
- schema:
- type: boolean
- default: true
- - variable: COMMENTO_ENABLE_WILDCARDS
- label: "COMMENTO_ENABLE_WILDCARDS"
- description: "Allows use of wildcards in domain names in the admin dashboard. (e.g. if you share your commento instance with more than one admin/allow new registrations)"
- schema:
- type: boolean
- default: true
- - variable: COMMENTO_ENABLE_LOGGING
- label: "COMMENTO_ENABLE_LOGGING"
- description: "Should we log every page view? This will allow you to see stats but will fill up your free postgres database quite quickly."
- schema:
- type: boolean
- default: false
- - variable: smpt_config
- label: "Enable SMTP"
- schema:
- type: boolean
- default: false
- show_subquestions_if: true
- subquestions:
- - variable: SMTP_SKIP_HOST_VERIFY
- label: "SMTP_SKIP_HOST_VERIFY"
- description: "Allows skipping of host verification for SMTP email sending."
- schema:
- type: boolean
- default: false
- - variable: COMMENTO_SMTP_USERNAME
- label: "COMMENTO_SMTP_USERNAME"
- description: "SMTP credentials and configuration the server should use to send emails."
- schema:
- type: string
- default: ""
- - variable: COMMENTO_SMTP_PASSWORD
- label: "COMMENTO_SMTP_PASSWORD"
- description: "SMTP credentials and configuration the server should use to send emails."
- schema:
- type: string
- private: true
- default: ""
- - variable: COMMENTO_SMTP_HOST
- label: "COMMENTO_SMTP_HOST"
- description: "SMTP credentials and configuration the server should use to send emails."
- schema:
- type: string
- default: ""
- - variable: COMMENTO_SMTP_FROM_ADDRESS
- label: "COMMENTO_SMTP_FROM_ADDRESS"
- description: "SMTP credentials and configuration the server should use to send emails."
- schema:
- type: string
- default: ""
- - variable: COMMENTO_SMTP_PORT
- label: "COMMENTO_SMTP_PORT"
- description: "SMTP credentials and configuration the server should use to send emails."
- schema:
- type: int
- default: 587
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -141,12 +142,12 @@ questions:
schema:
type: int
default: 568
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 568
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 568
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/commento-plusplus/templates/NOTES.txt b/charts/stable/commento-plusplus/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/commento-plusplus/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/commento-plusplus/templates/common.yaml b/charts/stable/commento-plusplus/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/commento-plusplus/templates/common.yaml
+++ b/charts/stable/commento-plusplus/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/commento-plusplus/values.yaml b/charts/stable/commento-plusplus/values.yaml
index 138e3f387cb..d0659a18eb2 100644
--- a/charts/stable/commento-plusplus/values.yaml
+++ b/charts/stable/commento-plusplus/values.yaml
@@ -3,36 +3,51 @@ image:
tag: v1.8.7@sha256:9e64c97771e6d875c465fd047bc98978c7ffc4ff6c0841a878c790753a8cfca1
pullPolicy: IfNotPresent
-env:
- COMMENTO_PORT: "{{ .Values.service.main.ports.main.port }}"
- # User Defined
- COMMENTO_FORBID_NEW_OWNERS: false
- COMMENTO_GZIP_STATIC: true
- COMMENTO_ORIGIN: "http://localhost:8080"
- COMMENTO_ENABLE_WILDCARDS: true
- COMMENTO_ENABLE_LOGGING: false
- SMTP_SKIP_HOST_VERIFY: false
- COMMENTO_SMTP_USERNAME: ""
- COMMENTO_SMTP_PASSWORD: ""
- COMMENTO_SMTP_HOST: ""
- COMMENTO_SMTP_FROM_ADDRESS: ""
- COMMENTO_SMTP_PORT: 587
- COMMENTO_POSTGRES:
- secretKeyRef:
- name: dbcreds
- key: urlnossl
-
service:
main:
ports:
main:
port: 10240
+ protocol: http
-postgresql:
- enabled: true
- existingSecret: "dbcreds"
- postgresqlUsername: comment-plusplus
- postgresqlDatabase: comment-plusplus
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ env:
+ COMMENTO_PORT: "{{ .Values.service.main.ports.main.port }}"
+ # User Defined
+
+ COMMENTO_FORBID_NEW_OWNERS: false
+ COMMENTO_GZIP_STATIC: true
+ COMMENTO_ORIGIN: "http://localhost:8080"
+ COMMENTO_ENABLE_WILDCARDS: true
+ COMMENTO_ENABLE_LOGGING: false
+ SMTP_SKIP_HOST_VERIFY: false
+ COMMENTO_SMTP_USERNAME: ""
+ COMMENTO_SMTP_PASSWORD: ""
+ COMMENTO_SMTP_HOST: ""
+ COMMENTO_SMTP_FROM_ADDRESS: ""
+ COMMENTO_SMTP_PORT: 587
+ COMMENTO_POSTGRES:
+ secretKeyRef:
+ name: cnpg-main-urls
+ key: std
+
+cnpg:
+ main:
+ enabled: true
+ user: comment-plusplus
+ database: comment-plusplus
portal:
- enabled: true
+ open:
+ enabled: true
diff --git a/charts/stable/custom-app/Chart.yaml b/charts/stable/custom-app/Chart.yaml
index 13309ac0d67..4605daebdc2 100644
--- a/charts/stable/custom-app/Chart.yaml
+++ b/charts/stable/custom-app/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "0.20.2297"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: Advanced tool to create your own TrueCharts-based App
home: https://truecharts.org/charts/stable/custom-app
@@ -19,9 +19,8 @@ name: custom-app
sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/custom-app
type: application
-version: 7.0.23
+version: 8.0.0
annotations:
truecharts.org/catagories: |
- custom
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/custom-app/ci/test-values.yaml b/charts/stable/custom-app/ci/test-values.yaml
index 40efc64f6a9..c67bca692a2 100644
--- a/charts/stable/custom-app/ci/test-values.yaml
+++ b/charts/stable/custom-app/ci/test-values.yaml
@@ -28,10 +28,6 @@ serviceList:
port: 9119
targetPort: 9119
-env:
- {}
- # PUID: 1001
-
persistence:
config:
enabled: true
diff --git a/charts/stable/custom-app/questions.yaml b/charts/stable/custom-app/questions.yaml
index 9b7e550bbb7..f03ede30bea 100644
--- a/charts/stable/custom-app/questions.yaml
+++ b/charts/stable/custom-app/questions.yaml
@@ -41,11 +41,13 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
-# Include{containerBasic}
-# Include{containerAdvanced}
+
# Include{controllerExpertCommand}
+# Include{containerBasic}
+# Include{containerAdvanced}
# Include{containerConfig}
+# Include{podOptions}
- variable: probes
group: "App Configuration"
label: "Healthcheck Probes"
@@ -276,12 +278,12 @@ questions:
schema:
type: int
default: 568
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 568
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 568
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/custom-app/templates/NOTES.txt b/charts/stable/custom-app/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/custom-app/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/custom-app/templates/common.yaml b/charts/stable/custom-app/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/custom-app/templates/common.yaml
+++ b/charts/stable/custom-app/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/custom-app/values.yaml b/charts/stable/custom-app/values.yaml
index e6e22f8e796..b56970096d5 100644
--- a/charts/stable/custom-app/values.yaml
+++ b/charts/stable/custom-app/values.yaml
@@ -4,4 +4,18 @@ image:
tag: 0.20.2297@sha256:4de1541011cb56935ba5a8e28a58f6cbcf62a903393dc94581eda0b6e2aa117c
portal:
- enabled: true
+ open:
+ enabled: false
+
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
diff --git a/charts/stable/docker-compose/Chart.yaml b/charts/stable/docker-compose/Chart.yaml
index 5be6a7423cb..5ce600fe485 100644
--- a/charts/stable/docker-compose/Chart.yaml
+++ b/charts/stable/docker-compose/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "23.0.1"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: Dedicated App for using Docker-Compose on TrueNAS SCALE
home: https://truecharts.org/charts/stable/docker-compose
@@ -20,9 +20,8 @@ name: docker-compose
sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/docker-compose
type: application
-version: 5.0.26
+version: 6.0.0
annotations:
truecharts.org/catagories: |
- docker
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/docker-compose/questions.yaml b/charts/stable/docker-compose/questions.yaml
index 4f80cfab595..23a65a2e03c 100644
--- a/charts/stable/docker-compose/questions.yaml
+++ b/charts/stable/docker-compose/questions.yaml
@@ -8,23 +8,24 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: COMPOSE_FILE
+ label: Docker Compose File
+ description: Path on the host of the compose file you want to load. You MUST mount the storage yourself
+ schema:
+ type: string
+ default: ""
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: env
- group: App Configuration
- label: Image Environment
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: COMPOSE_FILE
- label: Docker Compose File
- description: Path on the host of the compose file you want to load. You MUST mount the storage yourself
- schema:
- type: string
- default: ""
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceExpertRoot}
default: true
# Include{serviceExpert}
@@ -32,28 +33,27 @@ questions:
# Include{persistenceList}
# Include{securityContextRoot}
- - variable: runAsUser
- label: runAsUser
- description: The UserID of the user running the application
- schema:
- type: int
- default: 0
- - variable: runAsGroup
- label: runAsGroup
- description: The groupID this App of the user running the application
- schema:
- type: int
- default: 0
+ - variable: runAsUser
+ label: "runAsUser"
+ description: "The UserID of the user running the application"
+ schema:
+ type: int
+ default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
- - variable: fsGroup
- label: fsGroup
- description: The group that should own ALL storage.
- schema:
- type: int
- default: 0
-
+ - variable: fsGroup
+ label: "fsGroup"
+ description: "The group that should own ALL storage."
+ schema:
+ type: int
+ default: 0
# Include{ingressList}
# Include{resources}
# Include{advanced}
diff --git a/charts/stable/docker-compose/templates/NOTES.txt b/charts/stable/docker-compose/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/docker-compose/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/docker-compose/templates/common.yaml b/charts/stable/docker-compose/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/docker-compose/templates/common.yaml
+++ b/charts/stable/docker-compose/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/docker-compose/values.yaml b/charts/stable/docker-compose/values.yaml
index ace900dfc93..097ba1b4b13 100644
--- a/charts/stable/docker-compose/values.yaml
+++ b/charts/stable/docker-compose/values.yaml
@@ -2,53 +2,27 @@ image:
repository: tccr.io/truecharts/docker-in-docker
pullPolicy: IfNotPresent
tag: 23.0.1@sha256:118421527d72dd07061e074781b8fee99bb6dc50c5f76e0453e69a1095c25bc2
-
-controller:
- # -- Set the controller type.
- # Valid options are deployment, daemonset or statefulset
- type: statefulset
- # -- Number of desired pods
- replicas: 1
- # -- Set the controller upgrade strategy
- # For Deployments, valid values are Recreate (default) and RollingUpdate.
- # For StatefulSets, valid values are OnDelete and RollingUpdate (default).
- # DaemonSets ignore this.
- strategy: RollingUpdate
- rollingUpdate:
- # -- Set deployment RollingUpdate max unavailable
- unavailable: 1
- # -- Set deployment RollingUpdate max surge
- surge:
- # -- Set statefulset RollingUpdate partition
- partition:
- # -- ReplicaSet revision history limit
- revisionHistoryLimit: 3
+hostNetwork: true
securityContext:
- privileged: true
- readOnlyRootFilesystem: false
- allowPrivilegeEscalation: true
- runAsNonRoot: false
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
- fsGroup: 0
-
-hostNetwork: true
+ container:
+ privileged: true
+ readOnlyRootFilesystem: false
+ allowPrivilegeEscalation: true
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
+ fsGroup: 0
service:
main:
enabled: true
+ type: ClusterIP
ports:
main:
port: 2376
type: HTTPS
-env:
- DOCKER_TLS_CERTDIR: /certs
- COMPOSE_FILE: ""
-
lifecycle:
postStart:
exec:
@@ -67,20 +41,31 @@ lifecycle:
else
echo "COMPOSE_FILE not set, not auto-loading compose-file" >> /proc/1/fd/1;
fi
-probes:
- liveness:
- spec:
- initialDelaySeconds: 30
- readiness:
- spec:
- initialDelaySeconds: 30
- startup:
- spec:
- initialDelaySeconds: 30
+
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ probes:
+ liveness:
+ initialDelaySeconds: 30
+ type: tcp
+ readiness:
+ initialDelaySeconds: 30
+ type: tcp
+ startup:
+ initialDelaySeconds: 30
+ type: tcp
+ env:
+ DOCKER_TLS_CERTDIR: /certs
+ COMPOSE_FILE: ""
+
+ type: StatefulSet
+ replicas: 1
+ strategy: RollingUpdate
persistence:
- varrun:
- enabled: false
docker-certs-ca:
enabled: true
mountPath: /config
@@ -94,4 +79,5 @@ volumeClaimTemplates:
mountPath: /var/lib/docker
portal:
- enabled: false
+ open:
+ enabled: false
diff --git a/charts/stable/filebot/Chart.yaml b/charts/stable/filebot/Chart.yaml
index 8bd06a61576..3e665c1a99f 100644
--- a/charts/stable/filebot/Chart.yaml
+++ b/charts/stable/filebot/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "23.02.2"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: FileBot is the ultimate tool for organizing and renaming your movies, tv shows or anime, and music well as downloading subtitles and artwork. It's smart and just works.
home: https://truecharts.org/charts/stable/filebot
@@ -21,9 +21,8 @@ sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/filebot
- https://github.com/jlesage/docker-filebot
type: application
-version: 3.0.13
+version: 4.0.0
annotations:
truecharts.org/catagories: |
- media
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/filebot/questions.yaml b/charts/stable/filebot/questions.yaml
index 01282f71dfc..599d526c507 100644
--- a/charts/stable/filebot/questions.yaml
+++ b/charts/stable/filebot/questions.yaml
@@ -11,23 +11,23 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: VNC_PASSWORD
+ label: "VNC_PASSWORD"
+ description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
+ schema:
+ type: string
+ private: true
+ default: ""
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: secretEnv
- group: "App Configuration"
- label: "Image Secrets"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: VNC_PASSWORD
- label: "VNC_PASSWORD"
- description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
- schema:
- type: string
- private: true
- default: ""
- variable: filebot
group: "App Configuration"
label: "FileBot Configuration"
@@ -232,7 +232,9 @@ questions:
schema:
type: string
default: ""
+
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -335,12 +337,12 @@ questions:
schema:
type: int
default: 0
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/filebot/templates/NOTES.txt b/charts/stable/filebot/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/filebot/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/filebot/templates/common.yaml b/charts/stable/filebot/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/filebot/templates/common.yaml
+++ b/charts/stable/filebot/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/filebot/values.yaml b/charts/stable/filebot/values.yaml
index 25ef72722b4..0aba0c8e475 100644
--- a/charts/stable/filebot/values.yaml
+++ b/charts/stable/filebot/values.yaml
@@ -4,12 +4,11 @@ image:
pullPolicy: IfNotPresent
securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
+ container:
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
service:
main:
@@ -25,13 +24,6 @@ service:
port: 10269
targetPort: 5900
-envFrom:
- - configMapRef:
- name: '{{ include "tc.common.names.fullname" . }}-filebot'
-
-secretEnv:
- VNC_PASSWORD: ""
-
filebot:
KEEP_APP_RUNNING: false
DISPLAY_WIDTH: 1280
@@ -87,19 +79,43 @@ configmap:
AMC_INSTALL_PKGS: "{{ .Values.filebot.AMC_INSTALL_PKGS }}"
USE_FILEBOT_BETA: '{{ ternary "1" "0" .Values.filebot.USE_FILEBOT_BETA }}'
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ securityContext:
+ capabilities:
+ add:
+ - NET_BIND_SERVICE
+ - KILL
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ env:
+ VNC_PASSWORD: ""
+ envFrom:
+ - configMapRef:
+ name: "filebot"
+
persistence:
config:
enabled: true
- mountPath: "/config"
+ mountPath: /config
storage:
enabled: true
- mountPath: "/storage"
+ mountPath: /storage
watch:
enabled: true
- mountPath: "/watch"
+ mountPath: /watch
output:
enabled: true
- mountPath: "/output"
+ mountPath: /output
portal:
- enabled: true
+ open:
+ enabled: true
diff --git a/charts/stable/gitea/Chart.yaml b/charts/stable/gitea/Chart.yaml
index ee8e1aecf54..cdf21508d74 100644
--- a/charts/stable/gitea/Chart.yaml
+++ b/charts/stable/gitea/Chart.yaml
@@ -3,15 +3,12 @@ appVersion: "1.18.5"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
- - condition: postgresql.enabled
- name: postgresql
- repository: https://deps.truecharts.org/
- version: 11.0.31
+ version: 12.6.1
+
- condition: memcached.enabled
name: memcached
repository: https://deps.truecharts.org/
- version: 5.0.31
+ version: 6.0.15
deprecated: false
description: Self hosted GIT repositories
home: https://truecharts.org/charts/stable/gitea
@@ -34,9 +31,8 @@ sources:
- https://gitea.com/gitea/helm-chart
- https://github.com/go-gitea/gitea
type: application
-version: 12.0.31
+version: 13.0.0
annotations:
truecharts.org/catagories: |
- GIT
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/gitea/LICENSE b/charts/stable/gitea/LICENSE
new file mode 100644
index 00000000000..33a8cbb23f0
--- /dev/null
+++ b/charts/stable/gitea/LICENSE
@@ -0,0 +1,106 @@
+Business Source License 1.1
+
+Parameters
+
+Licensor: The TrueCharts Project, it's owner and it's contributors
+Licensed Work: The TrueCharts "Blocky" Helm Chart
+Additional Use Grant: You may use the licensed work in production, as long
+ as it is directly sourced from a TrueCharts provided
+ official repository, catalog or source. You may also make private
+ modification to the directly sourced licenced work,
+ when used in production.
+
+ The following cases are, due to their nature, also
+ defined as 'production use' and explicitly prohibited:
+ - Bundling, including or displaying the licensed work
+ with(in) another work intended for production use,
+ with the apparent intend of facilitating and/or
+ promoting production use by third parties in
+ violation of this license.
+
+Change Date: 2050-01-01
+
+Change License: 3-clause BSD license
+
+For information about alternative licensing arrangements for the Software,
+please contact: legal@truecharts.org
+
+Notice
+
+The Business Source License (this document, or the “License”) is not an Open
+Source license. However, the Licensed Work will eventually be made available
+under an Open Source License, as stated in this License.
+
+License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved.
+“Business Source License” is a trademark of MariaDB Corporation Ab.
+
+-----------------------------------------------------------------------------
+
+Business Source License 1.1
+
+Terms
+
+The Licensor hereby grants you the right to copy, modify, create derivative
+works, redistribute, and make non-production use of the Licensed Work. The
+Licensor may make an Additional Use Grant, above, permitting limited
+production use.
+
+Effective on the Change Date, or the fourth anniversary of the first publicly
+available distribution of a specific version of the Licensed Work under this
+License, whichever comes first, the Licensor hereby grants you rights under
+the terms of the Change License, and the rights granted in the paragraph
+above terminate.
+
+If your use of the Licensed Work does not comply with the requirements
+currently in effect as described in this License, you must purchase a
+commercial license from the Licensor, its affiliated entities, or authorized
+resellers, or you must refrain from using the Licensed Work.
+
+All copies of the original and modified Licensed Work, and derivative works
+of the Licensed Work, are subject to this License. This License applies
+separately for each version of the Licensed Work and the Change Date may vary
+for each version of the Licensed Work released by Licensor.
+
+You must conspicuously display this License on each original or modified copy
+of the Licensed Work. If you receive the Licensed Work in original or
+modified form from a third party, the terms and conditions set forth in this
+License apply to your use of that work.
+
+Any use of the Licensed Work in violation of this License will automatically
+terminate your rights under this License for the current and all other
+versions of the Licensed Work.
+
+This License does not grant you any right in any trademark or logo of
+Licensor or its affiliates (provided that you may use a trademark or logo of
+Licensor as expressly required by this License).
+
+TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON
+AN “AS IS” BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS,
+EXPRESS OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND
+TITLE.
+
+MariaDB hereby grants you permission to use this License’s text to license
+your works, and to refer to it using the trademark “Business Source License”,
+as long as you comply with the Covenants of Licensor below.
+
+Covenants of Licensor
+
+In consideration of the right to use this License’s text and the “Business
+Source License” name and trademark, Licensor covenants to MariaDB, and to all
+other recipients of the licensed work to be provided by Licensor:
+
+1. To specify as the Change License the GPL Version 2.0 or any later version,
+ or a license that is compatible with GPL Version 2.0 or a later version,
+ where “compatible” means that software provided under the Change License can
+ be included in a program with software provided under GPL Version 2.0 or a
+ later version. Licensor may specify additional Change Licenses without
+ limitation.
+
+2. To either: (a) specify an additional grant of rights to use that does not
+ impose any additional restriction on the right granted in this License, as
+ the Additional Use Grant; or (b) insert the text “None”.
+
+3. To specify a Change Date.
+
+4. Not to modify this License in any other way.
diff --git a/charts/stable/gitea/questions.yaml b/charts/stable/gitea/questions.yaml
index 330661d8288..29ee5c4b034 100644
--- a/charts/stable/gitea/questions.yaml
+++ b/charts/stable/gitea/questions.yaml
@@ -10,10 +10,12 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+
# Include{containerBasic}
# Include{containerAdvanced}
-
# Include{containerConfig}
+# Include{podOptions}
- variable: admin
group: "App Configuration"
label: "Admin Credentials"
@@ -195,12 +197,12 @@ questions:
schema:
type: int
default: 1000
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 1000
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 1000
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/gitea/templates/NOTES.txt b/charts/stable/gitea/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/gitea/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/gitea/templates/_configmap.tpl b/charts/stable/gitea/templates/_configmap.tpl
index ce4867d9303..7605060d627 100644
--- a/charts/stable/gitea/templates/_configmap.tpl
+++ b/charts/stable/gitea/templates/_configmap.tpl
@@ -1,10 +1,6 @@
{{/* Define the configmap */}}
{{- define "gitea.configmap" -}}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: gitea-env
+enabled: true
data:
GITEA_APP_INI: "/data/gitea/conf/app.ini"
GITEA_CUSTOM: "/data/gitea"
@@ -16,5 +12,4 @@ data:
SSH_LISTEN_PORT: {{ .Values.service.ssh.ports.ssh.targetPort | quote }}
TMPDIR: "/tmp/gitea"
GNUPGHOME: "/data/git/.gnupg"
-
{{- end -}}
diff --git a/charts/stable/gitea/templates/_secrets.tpl b/charts/stable/gitea/templates/_secrets.tpl
index 335581abe78..b0d30ed35c0 100644
--- a/charts/stable/gitea/templates/_secrets.tpl
+++ b/charts/stable/gitea/templates/_secrets.tpl
@@ -1,246 +1,233 @@
{{/* Define the secrets */}}
{{- define "gitea.secrets" -}}
----
{{ $DOMAIN := .Values.config.nodeIP | quote -}}
{{ $URL := (printf "http://%s/" .Values.config.nodeIP) }}
+{{- $pgHost := printf "%v-cnpg-main-rw" (include "tc.v1.common.lib.chart.names.fullname" $) -}}
{{- if and (.Values.ingress.main.enabled) (gt (len .Values.ingress.main.hosts) 0) -}}
{{- $DOMAIN = (index .Values.ingress.main.hosts 0).host -}}
{{- $URL = (printf "https://%s/" (index .Values.ingress.main.hosts 0).host) -}}
{{- end -}}
-apiVersion: v1
-kind: Secret
-metadata:
- name: {{ include "tc.common.names.fullname" . }}
- labels:
- {{- include "tc.common.labels" . | nindent 4 }}
-type: Opaque
-stringData:
- app.ini: |-
- APP_NAME = {{ .Values.config.APP_NAME }}
- RUN_MODE = {{ .Values.config.RUN_MODE }}
+secret:
+ enabled: true
+ data:
+ app.ini: |-
+ APP_NAME = {{ .Values.config.APP_NAME }}
+ RUN_MODE = {{ .Values.config.RUN_MODE }}
- [cache]
- ADAPTER = memcache
- ENABLED = true
- HOST = {{ printf "%v-%v:%v" .Release.Name "memcached" "11211" }}
- {{- range $catindex, $catvalue := .Values.customConfig }}
- {{- if eq $catvalue.name "cache" }}
- {{- range $index, $value := $catvalue.keys }}
- {{ $value.name }} = {{ $value.value }}
- {{- end }}
- {{- end }}
- {{- end }}
+ [cache]
+ ADAPTER = memcache
+ ENABLED = true
+ HOST = {{ printf "%v-%v:%v" .Release.Name "memcached" "11211" }}
+ {{- range $catindex, $catvalue := .Values.customConfig }}
+ {{- if eq $catvalue.name "cache" }}
+ {{- range $index, $value := $catvalue.keys }}
+ {{ $value.name }} = {{ $value.value }}
+ {{- end }}
+ {{- end }}
+ {{- end }}
- [database]
- DB_TYPE = postgres
- HOST = {{ printf "%v-%v:%v" .Release.Name "postgresql" "5432" }}
- NAME = {{ .Values.postgresql.postgresqlDatabase }}
- PASSWD = {{ .Values.postgresql.postgresqlPassword }}
- USER = {{ .Values.postgresql.postgresqlUsername }}
- {{- range $catindex, $catvalue := .Values.customConfig }}
- {{- if eq $catvalue.name "database" }}
- {{- range $index, $value := $catvalue.keys }}
- {{ $value.name }} = {{ $value.value }}
- {{- end }}
- {{- end }}
- {{- end }}
+ [database]
+ DB_TYPE = postgres
+ HOST = {{ printf "%v:5432" $pgHost }}
+ NAME = {{ .Values.cnpg.main.database }}
+ PASSWD = {{ .Values.cnpg.main.creds.password }}
+ USER = {{ .Values.cnpg.main.user }}
+ {{- range $catindex, $catvalue := .Values.customConfig }}
+ {{- if eq $catvalue.name "database" }}
+ {{- range $index, $value := $catvalue.keys }}
+ {{ $value.name }} = {{ $value.value }}
+ {{- end }}
+ {{- end }}
+ {{- end }}
- [metrics]
- ENABLED = {{ .Values.metrics.enabled }}
- {{- range $catindex, $catvalue := .Values.customConfig }}
- {{- if eq $catvalue.name "metrics" }}
- {{- range $index, $value := $catvalue.keys }}
- {{ $value.name }} = {{ $value.value }}
- {{- end }}
- {{- end }}
- {{- end }}
+ [metrics]
+ ENABLED = {{ .Values.metrics.enabled }}
+ {{- range $catindex, $catvalue := .Values.customConfig }}
+ {{- if eq $catvalue.name "metrics" }}
+ {{- range $index, $value := $catvalue.keys }}
+ {{ $value.name }} = {{ $value.value }}
+ {{- end }}
+ {{- end }}
+ {{- end }}
- [repository]
- ROOT = /data/git/gitea-repositories
- {{- range $catindex, $catvalue := .Values.customConfig }}
- {{- if eq $catvalue.name "repository" }}
- {{- range $index, $value := $catvalue.keys }}
- {{ $value.name }} = {{ $value.value }}
- {{- end }}
- {{- end }}
- {{- end }}
+ [repository]
+ ROOT = /data/git/gitea-repositories
+ {{- range $catindex, $catvalue := .Values.customConfig }}
+ {{- if eq $catvalue.name "repository" }}
+ {{- range $index, $value := $catvalue.keys }}
+ {{ $value.name }} = {{ $value.value }}
+ {{- end }}
+ {{- end }}
+ {{- end }}
- [security]
- INSTALL_LOCK = true
- {{- range $catindex, $catvalue := .Values.customConfig }}
- {{- if eq $catvalue.name "security" }}
- {{- range $index, $value := $catvalue.keys }}
- {{ $value.name }} = {{ $value.value }}
- {{- end }}
- {{- end }}
- {{- end }}
+ [security]
+ INSTALL_LOCK = true
+ {{- range $catindex, $catvalue := .Values.customConfig }}
+ {{- if eq $catvalue.name "security" }}
+ {{- range $index, $value := $catvalue.keys }}
+ {{ $value.name }} = {{ $value.value }}
+ {{- end }}
+ {{- end }}
+ {{- end }}
- [webhook]
- ALLOWED_HOST_LIST = {{ .Values.config.ALLOWED_HOST_LIST }}
+ [webhook]
+ ALLOWED_HOST_LIST = {{ .Values.config.ALLOWED_HOST_LIST }}
- [server]
- APP_DATA_PATH = /data
- DOMAIN = {{ $DOMAIN }}
- ENABLE_PPROF = false
- HTTP_PORT = {{ .Values.service.main.ports.main.targetPort }}
- PROTOCOL = http
- ROOT_URL = {{ $URL }}
- SSH_DOMAIN = {{ $DOMAIN }}
- SSH_LISTEN_PORT = {{ .Values.service.ssh.ports.ssh.targetPort }}
- SSH_PORT = {{ .Values.service.ssh.ports.ssh.port }}
- START_SSH_SERVER = true
- {{- range $catindex, $catvalue := .Values.customConfig }}
- {{- if eq $catvalue.name "server" }}
- {{- range $index, $value := $catvalue.keys }}
- {{ $value.name }} = {{ $value.value }}
- {{- end }}
- {{- end }}
- {{- end }}
+ [server]
+ APP_DATA_PATH = /data
+ DOMAIN = {{ $DOMAIN }}
+ ENABLE_PPROF = false
+ HTTP_PORT = {{ .Values.service.main.ports.main.targetPort }}
+ PROTOCOL = http
+ ROOT_URL = {{ $URL }}
+ SSH_DOMAIN = {{ $DOMAIN }}
+ SSH_LISTEN_PORT = {{ .Values.service.ssh.ports.ssh.targetPort }}
+ SSH_PORT = {{ .Values.service.ssh.ports.ssh.port }}
+ START_SSH_SERVER = true
+ {{- range $catindex, $catvalue := .Values.customConfig }}
+ {{- if eq $catvalue.name "server" }}
+ {{- range $index, $value := $catvalue.keys }}
+ {{ $value.name }} = {{ $value.value }}
+ {{- end }}
+ {{- end }}
+ {{- end }}
- {{- range $catindex, $catvalue := .Values.customConfig }}
- {{- if not ( or ( eq $catvalue.name "server" ) ( eq $catvalue.name "server" ) ( eq $catvalue.name "security" ) ( eq $catvalue.name "repository" ) ( eq $catvalue.name "metrics" ) ( eq $catvalue.name "database" ) ( eq $catvalue.name "cache" ) ) }}
- [{{ $catvalue.name }}]
- {{- range $index, $value := $catvalue.keys }}
- {{ $value.name }} = {{ $value.value }}
- {{- end }}
- {{- end }}
- {{- end }}
+ {{- range $catindex, $catvalue := .Values.customConfig }}
+ {{- if not ( or ( eq $catvalue.name "server" ) ( eq $catvalue.name "server" ) ( eq $catvalue.name "security" ) ( eq $catvalue.name "repository" ) ( eq $catvalue.name "metrics" ) ( eq $catvalue.name "database" ) ( eq $catvalue.name "cache" ) ) }}
+ [{{ $catvalue.name }}]
+ {{- range $index, $value := $catvalue.keys }}
+ {{ $value.name }} = {{ $value.value }}
+ {{- end }}
+ {{- end }}
+ {{- end }}
----
+init:
+ enabled: true
+ data:
+ init_directory_structure.sh: |-
+ #!/usr/bin/env bash
-apiVersion: v1
-kind: Secret
-metadata:
- name: {{ include "tc.common.names.fullname" . }}-init
- labels:
- {{- include "tc.common.labels" . | nindent 4 }}
-type: Opaque
-stringData:
- init_directory_structure.sh: |-
- #!/usr/bin/env bash
+ set -euo pipefail
- set -euo pipefail
+ {{- if .Values.initPreScript }}
+ # BEGIN: initPreScript
+ {{- with .Values.initPreScript -}}
+ {{ . | nindent 4}}
+ {{- end -}}
+ # END: initPreScript
+ {{- end }}
- {{- if .Values.initPreScript }}
- # BEGIN: initPreScript
- {{- with .Values.initPreScript -}}
- {{ . | nindent 4}}
- {{- end -}}
- # END: initPreScript
- {{- end }}
+ set -x
- set -x
+ mkdir -p /data/git/.ssh
+ chmod -R 700 /data/git/.ssh
+ [ ! -d /data/gitea ] && mkdir -p /data/gitea/conf
- mkdir -p /data/git/.ssh
- chmod -R 700 /data/git/.ssh
- [ ! -d /data/gitea ] && mkdir -p /data/gitea/conf
+ # prepare temp directory structure
+ mkdir -p "${GITEA_TEMP}"
+ chown -Rf {{ .Values.securityContext.container.runAsUser }}:{{ .Values.securityContext.pod.fsGroup }} "${GITEA_TEMP}"
+ chmod ug+rwx "${GITEA_TEMP}"
- # prepare temp directory structure
- mkdir -p "${GITEA_TEMP}"
- chown -Rf {{ .Values.podSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} "${GITEA_TEMP}"
- chmod ug+rwx "${GITEA_TEMP}"
+ # Copy config file to writable volume
+ cp /etc/gitea/conf/app.ini /data/gitea/conf/app.ini
+ chown -Rf {{ .Values.securityContext.container.runAsUser }}:{{ .Values.securityContext.pod.fsGroup }} "/data"
+ chmod a+rwx /data/gitea/conf/app.ini
- # Copy config file to writable volume
- cp /etc/gitea/conf/app.ini /data/gitea/conf/app.ini
- chown -Rf {{ .Values.podSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} "/data"
- chmod a+rwx /data/gitea/conf/app.ini
+ # Patch dockercontainer for dynamic users
+ chown -Rf {{ .Values.securityContext.container.runAsUser }}:{{ .Values.securityContext.pod.fsGroup }} "/var/lib/gitea"
- # Patch dockercontainer for dynamic users
- chown -Rf {{ .Values.podSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} "/var/lib/gitea"
+ configure_gitea.sh: |-
+ #!/usr/bin/env bash
- configure_gitea.sh: |-
- #!/usr/bin/env bash
-
- set -euo pipefail
+ set -euo pipefail
- # Connection retry inspired by https://gist.github.com/dublx/e99ea94858c07d2ca6de
- function test_db_connection() {
- local RETRY=0
- local MAX=30
+ # Connection retry inspired by https://gist.github.com/dublx/e99ea94858c07d2ca6de
+ function test_db_connection() {
+ local RETRY=0
+ local MAX=30
- echo 'Wait for database to become avialable...'
- until [ "${RETRY}" -ge "${MAX}" ]; do
- nc -vz -w2 {{ printf "%v-%v" .Release.Name "postgresql" }} 5432 && break
- RETRY=$[${RETRY}+1]
- echo "...not ready yet (${RETRY}/${MAX})"
- done
+ echo 'Wait for database to become avialable...'
+ until [ "${RETRY}" -ge "${MAX}" ]; do
+ nc -vz -w2 {{ $pgHost }} 5432 && break
+ RETRY=$[${RETRY}+1]
+ echo "...not ready yet (${RETRY}/${MAX})"
+ done
- if [ "${RETRY}" -ge "${MAX}" ]; then
- echo "Database not reachable after '${MAX}' attempts!"
- exit 1
- fi
- }
+ if [ "${RETRY}" -ge "${MAX}" ]; then
+ echo "Database not reachable after '${MAX}' attempts!"
+ exit 1
+ fi
+ }
- test_db_connection
+ test_db_connection
- echo '==== BEGIN GITEA MIGRATION ===='
+ echo '==== BEGIN GITEA MIGRATION ===='
- gitea migrate
+ gitea migrate
- echo '==== BEGIN GITEA CONFIGURATION ===='
+ echo '==== BEGIN GITEA CONFIGURATION ===='
- {{- if or .Values.admin.existingSecret (and .Values.admin.username .Values.admin.password) }}
- function configure_admin_user() {
- local ACCOUNT_ID=$(gitea admin user list --admin | grep -e "\s\+${GITEA_ADMIN_USERNAME}\|{{ .Values.admin.email }}\s\+" | awk -F " " "{printf \$1}")
- if [[ -z "${ACCOUNT_ID}" ]]; then
- echo "No admin user '${GITEA_ADMIN_USERNAME}' found, neither email '{{ .Values.admin.email }}' is assigned to an admin. Creating now..."
- gitea admin user create --admin --username "${GITEA_ADMIN_USERNAME}" --password "${GITEA_ADMIN_PASSWORD}" --email {{ .Values.admin.email | quote }} --must-change-password=false
- echo '...created.'
- else
- echo "Admin account '${GITEA_ADMIN_USERNAME}' or email {{ .Values.admin.email }} already exist. Running update to sync password..."
- gitea admin user change-password --username "${GITEA_ADMIN_USERNAME}" --password "${GITEA_ADMIN_PASSWORD}"
- echo '...password sync done.'
- fi
- }
+ {{- if or .Values.admin.existingSecret (and .Values.admin.username .Values.admin.password) }}
+ function configure_admin_user() {
+ local ACCOUNT_ID=$(gitea admin user list --admin | grep -e "\s\+${GITEA_ADMIN_USERNAME}\|{{ .Values.admin.email }}\s\+" | awk -F " " "{printf \$1}")
+ if [[ -z "${ACCOUNT_ID}" ]]; then
+ echo "No admin user '${GITEA_ADMIN_USERNAME}' found, neither email '{{ .Values.admin.email }}' is assigned to an admin. Creating now..."
+ gitea admin user create --admin --username "${GITEA_ADMIN_USERNAME}" --password "${GITEA_ADMIN_PASSWORD}" --email {{ .Values.admin.email | quote }} --must-change-password=false
+ echo '...created.'
+ else
+ echo "Admin account '${GITEA_ADMIN_USERNAME}' or email {{ .Values.admin.email }} already exist. Running update to sync password..."
+ gitea admin user change-password --username "${GITEA_ADMIN_USERNAME}" --password "${GITEA_ADMIN_PASSWORD}"
+ echo '...password sync done.'
+ fi
+ }
- configure_admin_user
- {{- end }}
+ configure_admin_user
+ {{- end }}
- {{- if .Values.ldap.enabled }}
- function configure_ldap() {
- local LDAP_NAME={{ (printf "%s" .Values.ldap.name) | squote }}
- local GITEA_AUTH_ID=$(gitea admin auth list --vertical-bars | grep -E "\|${LDAP_NAME}\s+\|" | grep -iE '\|LDAP \(via BindDN\)\s+\|' | awk -F " " "{print \$1}")
+ {{- if .Values.ldap.enabled }}
+ function configure_ldap() {
+ local LDAP_NAME={{ (printf "%s" .Values.ldap.name) | squote }}
+ local GITEA_AUTH_ID=$(gitea admin auth list --vertical-bars | grep -E "\|${LDAP_NAME}\s+\|" | grep -iE '\|LDAP \(via BindDN\)\s+\|' | awk -F " " "{print \$1}")
- if [[ -z "${GITEA_AUTH_ID}" ]]; then
- echo "No ldap configuration found with name '${LDAP_NAME}'. Installing it now..."
- gitea admin auth add-ldap {{- include "gitea.ldap_settings" . | indent 1 }}
- echo '...installed.'
- else
- echo "Existing ldap configuration with name '${LDAP_NAME}': '${GITEA_AUTH_ID}'. Running update to sync settings..."
- gitea admin auth update-ldap --id "${GITEA_AUTH_ID}" {{- include "gitea.ldap_settings" . | indent 1 }}
- echo '...sync settings done.'
- fi
- }
+ if [[ -z "${GITEA_AUTH_ID}" ]]; then
+ echo "No ldap configuration found with name '${LDAP_NAME}'. Installing it now..."
+ gitea admin auth add-ldap {{- include "gitea.ldap_settings" . | indent 1 }}
+ echo '...installed.'
+ else
+ echo "Existing ldap configuration with name '${LDAP_NAME}': '${GITEA_AUTH_ID}'. Running update to sync settings..."
+ gitea admin auth update-ldap --id "${GITEA_AUTH_ID}" {{- include "gitea.ldap_settings" . | indent 1 }}
+ echo '...sync settings done.'
+ fi
+ }
- configure_ldap
- {{- end }}
+ configure_ldap
+ {{- end }}
- {{- if .Values.oauth.enabled }}
- function configure_oauth() {
- local OAUTH_NAME={{ (printf "%s" .Values.oauth.name) | squote }}
- local AUTH_ID=$(gitea admin auth list --vertical-bars | grep -E "\|${OAUTH_NAME}\s+\|" | grep -iE '\|OAuth2\s+\|' | awk -F " " "{print \$1}")
+ {{- if .Values.oauth.enabled }}
+ function configure_oauth() {
+ local OAUTH_NAME={{ (printf "%s" .Values.oauth.name) | squote }}
+ local AUTH_ID=$(gitea admin auth list --vertical-bars | grep -E "\|${OAUTH_NAME}\s+\|" | grep -iE '\|OAuth2\s+\|' | awk -F " " "{print \$1}")
- if [[ -z "${AUTH_ID}" ]]; then
- echo "No oauth configuration found with name '${OAUTH_NAME}'. Installing it now..."
- gitea admin auth add-oauth {{- include "gitea.oauth_settings" . | indent 1 }}
- echo '...installed.'
- else
- echo "Existing oauth configuration with name '${OAUTH_NAME}': '${AUTH_ID}'. Running update to sync settings..."
- gitea admin auth update-oauth --id "${AUTH_ID}" {{- include "gitea.oauth_settings" . | indent 1 }}
- echo '...sync settings done.'
- fi
- }
+ if [[ -z "${AUTH_ID}" ]]; then
+ echo "No oauth configuration found with name '${OAUTH_NAME}'. Installing it now..."
+ gitea admin auth add-oauth {{- include "gitea.oauth_settings" . | indent 1 }}
+ echo '...installed.'
+ else
+ echo "Existing oauth configuration with name '${OAUTH_NAME}': '${AUTH_ID}'. Running update to sync settings..."
+ gitea admin auth update-oauth --id "${AUTH_ID}" {{- include "gitea.oauth_settings" . | indent 1 }}
+ echo '...sync settings done.'
+ fi
+ }
- configure_oauth
- {{- end }}
-
- echo '==== END GITEA CONFIGURATION ===='
+ configure_oauth
+ {{- end }}
+ echo '==== END GITEA CONFIGURATION ===='
{{- end -}}
diff --git a/charts/stable/gitea/templates/common.yaml b/charts/stable/gitea/templates/common.yaml
index eb5106bfa7b..ebc9e9874f6 100644
--- a/charts/stable/gitea/templates/common.yaml
+++ b/charts/stable/gitea/templates/common.yaml
@@ -1,33 +1,47 @@
{{/* Make sure all variables are set properly */}}
-{{- include "tc.common.loader.init" . }}
+{{- include "tc.v1.common.loader.init" . }}
{{/* Render secrets for gitea */}}
-{{- include "gitea.secrets" . }}
+{{- $secrets := include "gitea.secrets" . | fromYaml -}}
+{{- if $secrets -}}
+ {{- $_ := mustMergeOverwrite .Values.secret $secrets -}}
+{{- end -}}
{{/* Render configmap for gitea */}}
-{{- include "gitea.configmap" . }}
+{{- $configmap := include "gitea.configmap" . | fromYaml -}}
+{{- if $configmap -}}
+ {{- $_ := set .Values.configmap "gitea-env" $configmap -}}
+{{- end -}}
{{/* Append the general secret volumes to the volumes */}}
{{- define "gitea.initvolume" -}}
-enabled: "true"
-mountPath: "/secrets/ini"
+enabled: true
readOnly: true
-type: "custom"
-volumeSpec:
- secret:
- secretName: {{ include "tc.common.names.fullname" . }}-init
- defaultMode: 0777
+type: secret
+objectName: init
+defaultMode: "0777"
+targetSelector:
+ main:
+ main:
+ mountPath: /secrets/ini
+ 1-init-directories:
+ mountPath: "/usr/sbin"
+ 2-configure-gitea:
+ mountPath: "/usr/sbin"
{{- end -}}
{{/* Append the general secret volumes to the volumes */}}
{{- define "gitea.configvolume" -}}
-enabled: "true"
-mountPath: "/secrets/config"
+enabled: true
readOnly: true
-type: "custom"
-volumeSpec:
- secret:
- secretName: {{ include "tc.common.names.fullname" . }}
+type: secret
+objectName: secret
+targetSelector:
+ main:
+ main:
+ mountPath: /secrets/config
+ 1-init-directories:
+ mountPath: /etc/gitea/conf
{{- end -}}
{{- $_ := set .Values.persistence "init" (include "gitea.initvolume" . | fromYaml) -}}
@@ -35,4 +49,4 @@ volumeSpec:
{{/* Render the templates */}}
-{{ include "tc.common.loader.apply" . }}
+{{ include "tc.v1.common.loader.apply" . }}
diff --git a/charts/stable/gitea/values.yaml b/charts/stable/gitea/values.yaml
index d688230fb0d..9a35e48e358 100644
--- a/charts/stable/gitea/values.yaml
+++ b/charts/stable/gitea/values.yaml
@@ -2,12 +2,6 @@ image:
repository: tccr.io/truecharts/gitea
tag: 1.18.5@sha256:722c1aa3d962d7cdbec55a8016b33197468ea59a08e89650b33d6410973df944
pullPolicy: IfNotPresent
-
-podSecurityContext:
- runAsUser: 1000
- runAsGroup: 1000
- fsGroup: 1000
-
service:
main:
ports:
@@ -22,73 +16,27 @@ service:
port: 2222
targetPort: 2222
-envFrom:
- - configMapRef:
- name: gitea-env
-
-initContainers:
- 1-init-directories:
- image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
- command: ["/usr/sbin/init_directory_structure.sh"]
- securityContext:
- runAsUser: 0
- runAsNonRoot: false
- envFrom:
- - configMapRef:
- name: gitea-env
- volumeMounts:
- - name: init
- mountPath: "/usr/sbin"
- - name: temp
- mountPath: "/tmp"
- - name: config
- mountPath: "/etc/gitea/conf"
- - name: data
- mountPath: "/data"
- 2-configure-gitea:
- image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
- command: ["/usr/sbin/configure_gitea.sh"]
- envFrom:
- - configMapRef:
- name: gitea-env
- volumeMounts:
- - name: init
- mountPath: "/usr/sbin"
- - name: temp
- mountPath: "/tmp"
- - name: data
- mountPath: "/data"
-
persistence:
data:
enabled: true
mountPath: "/data"
- temp:
- enabled: true
- mountPath: "/tmp"
- type: emptyDir
+ targetSelectAll: true
varlib:
enabled: true
mountPath: "/var/lib/gitea"
type: emptyDir
-
# Configure commit/action signing prerequisites
signing:
enabled: true
gpgHome: /data/git/.gnupg
-
admin:
username: giteaadmin
password: r8sA8CPHD9!bt6d
email: "gitea@local.domain"
-
metrics:
- enabled: false
- serviceMonitor:
- enabled: false
- # additionalLabels:
- # prometheus-release: prom1
-
+ main:
+ enabled: true
+ type: "servicemonitor"
ldap:
enabled: false
# name:
@@ -103,7 +51,6 @@ ldap:
# bindPassword:
# usernameAttribute:
# sshPublicKeyAttribute:
-
oauth:
enabled: false
# name:
@@ -116,30 +63,67 @@ oauth:
# customTokenUrl:
# customProfileUrl:
# customEmailUrl:
-
config:
APP_NAME: "Gitea: Git with a cup of tea"
RUN_MODE: dev
ALLOWED_HOST_LIST: "127.0.0.1"
nodeIP: 127.0.0.1
-
-customConfig:
- []
- # - name: test
- # keys:
- # - name: testkey
- # value: testvalue
+customConfig: []
+# - name: test
+# keys:
+# - name: testkey
+# value: testvalue
# Enabled postgres
-postgresql:
- enabled: true
- existingSecret: "dbcreds"
- postgresqlUsername: gitea
- postgresqlDatabase: gitea
+cnpg:
+ main:
+ enabled: true
+ user: gitea
+ database: gitea
# -- memcached dependency settings
memcached:
enabled: true
-
portal:
- enabled: true
+ open:
+ enabled: true
+securityContext:
+ container:
+ runAsUser: 1000
+ runAsGroup: 1000
+ fsGroup: 1000
+workload:
+ main:
+ podSpec:
+ initContainers:
+ 1-init-directories:
+ enabled: true
+ imageSelector: image
+ type: init
+ command: ["/usr/sbin/init_directory_structure.sh"]
+ securityContext:
+ runAsUser: 0
+ runAsNonRoot: false
+ envFrom:
+ - configMapRef:
+ name: gitea-env
+ 2-configure-gitea:
+ enabled: true
+ imageSelector: image
+ type: init
+ command: ["/usr/sbin/configure_gitea.sh"]
+ envFrom:
+ - configMapRef:
+ name: gitea-env
+ containers:
+ main:
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ envFrom:
+ - configMapRef:
+ name: gitea-env
diff --git a/charts/stable/handbrake/Chart.yaml b/charts/stable/handbrake/Chart.yaml
index 1627db9570f..d3ca1609bde 100644
--- a/charts/stable/handbrake/Chart.yaml
+++ b/charts/stable/handbrake/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "23.02.1"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: HandBrake is a tool for converting video from nearly any format to a selection of modern, widely supported codecs.
home: https://truecharts.org/charts/stable/handbrake
@@ -23,9 +23,8 @@ sources:
- https://github.com/jlesage/docker-handbrake
- https://handbrake.fr/
type: application
-version: 15.0.10
+version: 16.0.0
annotations:
truecharts.org/catagories: |
- media
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/handbrake/questions.yaml b/charts/stable/handbrake/questions.yaml
index 1e22ae84453..1ee31007a5c 100644
--- a/charts/stable/handbrake/questions.yaml
+++ b/charts/stable/handbrake/questions.yaml
@@ -11,23 +11,23 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: VNC_PASSWORD
+ label: "VNC_PASSWORD"
+ description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
+ schema:
+ type: string
+ private: true
+ default: ""
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: secretEnv
- group: "App Configuration"
- label: "Image Secrets"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: VNC_PASSWORD
- label: "VNC_PASSWORD"
- description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
- schema:
- type: string
- private: true
- default: ""
- variable: handbrake
group: "App Configuration"
label: "HandBrake Configuration"
@@ -110,7 +110,9 @@ questions:
type: string
default: "ignore"
required: true
+
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -205,12 +207,12 @@ questions:
schema:
type: int
default: 0
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/handbrake/templates/NOTES.txt b/charts/stable/handbrake/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/handbrake/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/handbrake/templates/common.yaml b/charts/stable/handbrake/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/handbrake/templates/common.yaml
+++ b/charts/stable/handbrake/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/handbrake/values.yaml b/charts/stable/handbrake/values.yaml
index f77c7fd49ed..6398fd1e8ef 100644
--- a/charts/stable/handbrake/values.yaml
+++ b/charts/stable/handbrake/values.yaml
@@ -2,15 +2,6 @@ image:
repository: tccr.io/truecharts/handbrake
tag: 23.02.1@sha256:6c3b2acce5d7750fe4831d181ff9fc3dbf1c5663944778193477d51f9725f060
pullPolicy: IfNotPresent
-
-securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
-
service:
main:
ports:
@@ -24,14 +15,6 @@ service:
enabled: true
port: 10055
targetPort: 5900
-
-envFrom:
- - configMapRef:
- name: '{{ include "tc.common.names.fullname" . }}-handbrake'
-
-secretEnv:
- VNC_PASSWORD: ""
-
handbrake:
KEEP_APP_RUNNING: false
DISPLAY_WIDTH: 1280
@@ -42,7 +25,6 @@ handbrake:
AUTOMATED_CONVERSION_FORMAT: "mp4"
AUTOMATED_CONVERSION_KEEP_SOURCE: true
AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION: "ignore"
-
configmap:
handbrake:
enabled: true
@@ -56,7 +38,6 @@ configmap:
AUTOMATED_CONVERSION_PRESET: "{{ .Values.handbrake.AUTOMATED_CONVERSION_PRESET }}"
AUTOMATED_CONVERSION_FORMAT: "{{ .Values.handbrake.AUTOMATED_CONVERSION_FORMAT }}"
AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION: "{{ .Values.handbrake.AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION }}"
-
persistence:
config:
enabled: true
@@ -67,6 +48,34 @@ persistence:
output:
enabled: true
mountPath: "/output"
-
portal:
- enabled: true
+ open:
+ enabled: true
+securityContext:
+ container:
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ securityContext:
+ capabilities:
+ add:
+ - NET_BIND_SERVICE
+ - KILL
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ env:
+ VNC_PASSWORD: ""
+ envFrom:
+ - configMapRef:
+ name: "handbrake"
diff --git a/charts/stable/jdownloader2/Chart.yaml b/charts/stable/jdownloader2/Chart.yaml
index e9d5f5a0331..9fb40126edf 100644
--- a/charts/stable/jdownloader2/Chart.yaml
+++ b/charts/stable/jdownloader2/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "23.02.2"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: JDownloader is a free, open-source download management tool with a huge community of developers that makes downloading as easy and fast as it should be.
home: https://truecharts.org/charts/stable/jdownloader2
@@ -22,9 +22,8 @@ sources:
- https://github.com/jlesage/docker-jdownloader-2
- https://jdownloader.org/
type: application
-version: 10.0.15
+version: 11.0.0
annotations:
truecharts.org/catagories: |
- downloads
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/jdownloader2/questions.yaml b/charts/stable/jdownloader2/questions.yaml
index a1405fdb3a1..6c1726e8e1f 100644
--- a/charts/stable/jdownloader2/questions.yaml
+++ b/charts/stable/jdownloader2/questions.yaml
@@ -11,23 +11,23 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: VNC_PASSWORD
+ label: "VNC_PASSWORD"
+ description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
+ schema:
+ type: string
+ private: true
+ default: "REPLACETHIS"
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: secretEnv
- group: "App Configuration"
- label: "Image Secrets"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: VNC_PASSWORD
- label: "VNC_PASSWORD"
- description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
- schema:
- type: string
- private: true
- default: "REPLACETHIS"
- variable: jdownloader
group: "App Configuration"
label: "jDownloader2 Configuration"
@@ -75,7 +75,9 @@ questions:
schema:
type: boolean
default: false
+
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -184,12 +186,12 @@ questions:
schema:
type: int
default: 0
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/jdownloader2/templates/NOTES.txt b/charts/stable/jdownloader2/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/jdownloader2/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/jdownloader2/templates/common.yaml b/charts/stable/jdownloader2/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/jdownloader2/templates/common.yaml
+++ b/charts/stable/jdownloader2/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/jdownloader2/values.yaml b/charts/stable/jdownloader2/values.yaml
index 3b73977fb19..5a02e8af2be 100644
--- a/charts/stable/jdownloader2/values.yaml
+++ b/charts/stable/jdownloader2/values.yaml
@@ -2,15 +2,6 @@ image:
repository: tccr.io/truecharts/jdownloader-2
pullPolicy: IfNotPresent
tag: 23.02.2@sha256:67a8592a99de8921bdaca4d4c6660ad2c44d599ee5156d7da93d93668928d05d
-
-securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
-
service:
main:
ports:
@@ -31,14 +22,6 @@ service:
enabled: true
port: 10056
targetPort: 5900
-
-envFrom:
- - configMapRef:
- name: '{{ include "tc.common.names.fullname" . }}-jdownloader'
-
-secretEnv:
- VNC_PASSWORD: ""
-
jdownloader:
# General Settings
KEEP_APP_RUNNING: false
@@ -47,7 +30,6 @@ jdownloader:
DISPLAY_HEIGHT: 768
SECURE_CONNECTION: false
ENABLE_CJK_FONT: false
-
configmap:
jdownloader:
enabled: true
@@ -57,7 +39,6 @@ configmap:
SECURE_CONNECTION: '{{ ternary "1" "0" .Values.jdownloader.SECURE_CONNECTION }}'
DISPLAY_WIDTH: "{{ .Values.jdownloader.DISPLAY_WIDTH }}"
DISPLAY_HEIGHT: "{{ .Values.jdownloader.DISPLAY_HEIGHT }}"
-
persistence:
config:
enabled: true
@@ -65,6 +46,34 @@ persistence:
output:
enabled: true
mountPath: "/output"
-
portal:
- enabled: true
+ open:
+ enabled: true
+securityContext:
+ container:
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ securityContext:
+ capabilities:
+ add:
+ - NET_BIND_SERVICE
+ - KILL
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ env:
+ VNC_PASSWORD: ""
+ envFrom:
+ - configMapRef:
+ name: "jdownloader"
diff --git a/charts/stable/ntfy/Chart.yaml b/charts/stable/ntfy/Chart.yaml
index b6403e8c188..b5d6e3fb516 100644
--- a/charts/stable/ntfy/Chart.yaml
+++ b/charts/stable/ntfy/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "2.1.0"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
description: ntfy is a simple HTTP-based pub-sub notification service. It allows you to send notifications to your phone or desktop via scripts from any computer.
home: https://truecharts.org/charts/stable/ntfy
icon: https://truecharts.org/img/hotlink-ok/chart-icons/ntfy.png
@@ -18,9 +18,8 @@ name: ntfy
sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/ntfy
- https://github.com/binwiederhier/ntfy/
-version: 4.0.14
+version: 5.0.0
annotations:
truecharts.org/catagories: |
- media
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/ntfy/questions.yaml b/charts/stable/ntfy/questions.yaml
index 38e624f357d..4988bf3f537 100644
--- a/charts/stable/ntfy/questions.yaml
+++ b/charts/stable/ntfy/questions.yaml
@@ -11,239 +11,241 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: NTFY_BASE_URL
+ label: "Base URL"
+ description: "Public facing base URL of the service (e.g. https://ntfy.sh)"
+ schema:
+ type: string
+ required: true
+ default: ""
+ - variable: NTFY_BEHIND_PROXY
+ label: "Behind Proxy"
+ description: "If set, the X-Forwarded-For header is used to determine the visitor IP address instead of the remote address of the connection."
+ schema:
+ type: boolean
+ default: false
+ - variable: ENABLE_CACHE_FILE
+ label: "Enable Firebase File"
+ description: "If set to true, it enables the firebase file by setting the NTFY_FIREBASE_KEY_FILE to \"/etc/ntfy/firebase-key.json\""
+ schema:
+ type: boolean
+ default: false
+ - variable: ENABLE_CACHE_FILE
+ label: "Enable Cache File"
+ description: "If set to true, it enables the cache file by setting the NTFY_CACHE_FILE to \"/var/cache/ntfy/cache.db\""
+ schema:
+ type: boolean
+ default: false
+ show_subquestions_if: true
+ subquestions:
+ - variable: NTFY_CACHE_DURATION
+ label: "Cache Duration"
+ description: "Duration for which messages will be buffered before they are deleted. This is required to support the since=... and poll=1 parameter. Set this to 0 to disable the cache entirely."
+ schema:
+ type: string
+ required: true
+ default: "12h"
+ - variable: NTFY_KEEPALIVE_INTERVAL
+ label: "Keepalive interval"
+ description: "Interval in which keepalive messages are sent to the client. This is to prevent intermediaries closing the connection for inactivity. Note that the Android app has a hardcoded timeout at 77s, so it should be less than that."
+ schema:
+ type: string
+ required: true
+ default: "45s"
+ - variable: NTFY_MANAGER_INTERVAL
+ label: "Manager Interval"
+ description: "Interval in which the manager prunes old messages, deletes topics and prints the stats."
+ schema:
+ type: string
+ required: true
+ default: "1m"
+ - variable: NTFY_GLOBAL_TOPIC_LIMIT
+ label: "Global Topic Limit"
+ description: "Rate limiting: Total number of topics before the server rejects new topics."
+ schema:
+ type: int
+ required: true
+ default: 15000
+ - variable: ENABLE_VISITOR_SETTINGS
+ label: "Enable Visitor Settings"
+ description: "If set to true, it enables the visitor settings"
+ schema:
+ type: boolean
+ default: false
+ show_subquestions_if: true
+ subquestions:
+ - variable: NTFY_VISITOR_SUBSCRIPTION_LIMIT
+ label: "Visitor Ssubscription Limit"
+ description: "Rate limiting: Number of subscriptions per visitor (IP address)"
+ schema:
+ type: int
+ required: true
+ default: 30
+ - variable: NTFY_VISITOR_ATTACHMENT_TOTAL_SIZE_LIMIT
+ label: "Visitor Attachment Total Size Limit"
+ description: "Rate limiting: Total storage limit used for attachments per visitor, for all attachments combined. Storage is freed after attachments expire. See NTFY_ATTACHMENT_EXPIRY_DURATION"
+ schema:
+ type: string
+ required: true
+ default: "100M"
+ - variable: NTFY_VISITOR_ATTACHMENT_DAILY_BANDWIDTH_LIMIT
+ label: "Visitor Attachment Daily Bandwidth Limit"
+ description: "Rate limiting: Total daily attachment download/upload traffic limit per visitor. This is to protect your bandwidth costs from exploding."
+ schema:
+ type: string
+ required: true
+ default: "500M"
+ - variable: NTFY_VISITOR_REQUEST_LIMIT_BURST
+ label: "Visitor Request Limit Burst"
+ description: "Rate limiting: Allowed GET/PUT/POST requests per second, per visitor. This setting is the initial bucket of requests each visitor has"
+ schema:
+ type: int
+ required: true
+ default: 60
+ - variable: NTFY_VISITOR_REQUEST_LIMIT_REPLENISH
+ label: "Visitor Request Limit Replenish"
+ description: "Rate limiting: Strongly related to NTFY_VISITOR_REQUEST_LIMIT_BURST: The rate at which the bucket is refilled."
+ schema:
+ type: string
+ required: true
+ default: "5s"
+ - variable: NTFY_VISITOR_REQUEST_LIMIT_EXEMPT_HOSTS
+ label: "Visitor Request Limit Exempt Hosts"
+ description: "Rate limiting: List of hostnames and IPs to be exempt from request rate limiting."
+ schema:
+ type: string
+ default: ""
+ - variable: NTFY_VISITOR_EMAIL_LIMIT_BURST
+ label: "Visitor Email Limit Burst"
+ description: "Rate limiting:Initial limit of e-mails per visitor"
+ schema:
+ type: int
+ required: true
+ default: 16
+ - variable: NTFY_VISITOR_EMAIL_LIMIT_REPLENISH
+ label: "Visitor Email Limit Replenish"
+ description: "Rate limiting: Strongly related to NTFY_VISITOR_EMAIL_LIMIT_BURST: The rate at which the bucket is refilled."
+ schema:
+ type: string
+ required: true
+ default: "1h"
+ - variable: ENABLE_ATTACHMENT_CACHE_DIR
+ label: "Enable Attachment Cache Directory"
+ description: "If set to true, it enables the attachment dir by setting the NTFY_ATTACHMENT_CACHE_DIR to \"/var/cache/ntfy/attachments\""
+ schema:
+ type: boolean
+ default: false
+ show_subquestions_if: true
+ subquestions:
+ - variable: NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT
+ label: "Attachment Total Size Limit"
+ description: "Limit of the on-disk attachment cache directory. If the limits is exceeded, new attachments will be rejected."
+ schema:
+ type: string
+ required: true
+ default: "5G"
+ - variable: NTFY_ATTACHMENT_FILE_SIZE_LIMIT
+ label: "Attachment File Size Limit"
+ description: "Per-file attachment size limit (e.g. 300k, 2M, 100M). Larger attachment will be rejected."
+ schema:
+ type: string
+ required: true
+ default: "15M"
+ - variable: NTFY_ATTACHMENT_EXPIRY_DURATION
+ label: "Attachment Expiry Duration"
+ description: "Duration after which uploaded attachments will be deleted (e.g. 3h, 20h). Strongly affects NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT."
+ schema:
+ type: string
+ required: true
+ default: "3h"
+ - variable: ENABLE_AUTH_FILE
+ label: "Enable Auth File"
+ description: "If set to true, it enables the auth file by setting the NTFY_AUTH_FILE to \"/etc/ntfy/user.db\""
+ schema:
+ type: boolean
+ default: false
+ show_subquestions_if: true
+ subquestions:
+ - variable: NTFY_AUTH_DEFAULT_ACCESS
+ label: "Auth Default Access"
+ description: "Default permissions if no matching entries in the auth database are found."
+ schema:
+ type: string
+ required: true
+ default: "read-write"
+ enum:
+ - value: "read-write"
+ description: "read-write"
+ - value: "read-only"
+ description: "read-only"
+ - value: "write-only"
+ description: "write-only"
+ - value: "deny-all"
+ description: "deny-all"
+ - variable: ENABLE_SMTP_SETTINGS
+ label: "Enable SMTP Settings"
+ description: "If set to true, it enables the SMTP settings"
+ schema:
+ type: boolean
+ default: false
+ show_subquestions_if: true
+ subquestions:
+ - variable: NTFY_SMTP_SENDER_ADDR
+ label: "SMTP Sender Address"
+ description: "SMTP server address to allow email sending"
+ schema:
+ type: string
+ default: ""
+ - variable: NTFY_SMTP_SENDER_USER
+ label: "SMTP Sender User"
+ description: "SMTP user. Only used if e-mail sending is enabled"
+ schema:
+ type: string
+ default: ""
+ - variable: NTFY_SMTP_SENDER_PASS
+ label: "SMTP Sender Password"
+ description: SMTP password. Only used if e-mail sending is enabled"
+ schema:
+ type: string
+ private: true
+ default: ""
+ - variable: NTFY_SMTP_SENDER_FROM
+ label: "SMTP Sender From Address"
+ description: "SMTP sender e-mail address. Only used if e-mail sending is enabled"
+ schema:
+ type: string
+ default: ""
+ - variable: NTFY_SMTP_SERVER_LISTEN
+ label: "SMTP Server Listen"
+ description: "Defines the IP address and port the SMTP server will listen on, e.g. :25 or 1.2.3.4:25"
+ schema:
+ type: string
+ default: ""
+ - variable: NTFY_SMTP_SERVER_DOMAIN
+ label: "SMTP Server Domain"
+ description: "SMTP server e-mail domain, e.g. ntfy.sh"
+ schema:
+ type: string
+ default: ""
+ - variable: NTFY_SMTP_SERVER_ADDR_PREFIX
+ label: "SMTP Server Address Prefix"
+ description: "Optional prefix for the e-mail addresses to prevent spam, e.g. ntfy-"
+ schema:
+ type: string
+ default: ""
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: env
- group: "App Configuration"
- label: "Image Environment"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: NTFY_BASE_URL
- label: "Base URL"
- description: "Public facing base URL of the service (e.g. https://ntfy.sh)"
- schema:
- type: string
- required: true
- default: ""
- - variable: NTFY_BEHIND_PROXY
- label: "Behind Proxy"
- description: "If set, the X-Forwarded-For header is used to determine the visitor IP address instead of the remote address of the connection."
- schema:
- type: boolean
- default: false
- - variable: ENABLE_CACHE_FILE
- label: "Enable Firebase File"
- description: "If set to true, it enables the firebase file by setting the NTFY_FIREBASE_KEY_FILE to \"/etc/ntfy/firebase-key.json\""
- schema:
- type: boolean
- default: false
- - variable: ENABLE_CACHE_FILE
- label: "Enable Cache File"
- description: "If set to true, it enables the cache file by setting the NTFY_CACHE_FILE to \"/var/cache/ntfy/cache.db\""
- schema:
- type: boolean
- default: false
- show_subquestions_if: true
- subquestions:
- - variable: NTFY_CACHE_DURATION
- label: "Cache Duration"
- description: "Duration for which messages will be buffered before they are deleted. This is required to support the since=... and poll=1 parameter. Set this to 0 to disable the cache entirely."
- schema:
- type: string
- required: true
- default: "12h"
- - variable: NTFY_KEEPALIVE_INTERVAL
- label: "Keepalive interval"
- description: "Interval in which keepalive messages are sent to the client. This is to prevent intermediaries closing the connection for inactivity. Note that the Android app has a hardcoded timeout at 77s, so it should be less than that."
- schema:
- type: string
- required: true
- default: "45s"
- - variable: NTFY_MANAGER_INTERVAL
- label: "Manager Interval"
- description: "Interval in which the manager prunes old messages, deletes topics and prints the stats."
- schema:
- type: string
- required: true
- default: "1m"
- - variable: NTFY_GLOBAL_TOPIC_LIMIT
- label: "Global Topic Limit"
- description: "Rate limiting: Total number of topics before the server rejects new topics."
- schema:
- type: int
- required: true
- default: 15000
- - variable: ENABLE_VISITOR_SETTINGS
- label: "Enable Visitor Settings"
- description: "If set to true, it enables the visitor settings"
- schema:
- type: boolean
- default: false
- show_subquestions_if: true
- subquestions:
- - variable: NTFY_VISITOR_SUBSCRIPTION_LIMIT
- label: "Visitor Ssubscription Limit"
- description: "Rate limiting: Number of subscriptions per visitor (IP address)"
- schema:
- type: int
- required: true
- default: 30
- - variable: NTFY_VISITOR_ATTACHMENT_TOTAL_SIZE_LIMIT
- label: "Visitor Attachment Total Size Limit"
- description: "Rate limiting: Total storage limit used for attachments per visitor, for all attachments combined. Storage is freed after attachments expire. See NTFY_ATTACHMENT_EXPIRY_DURATION"
- schema:
- type: string
- required: true
- default: "100M"
- - variable: NTFY_VISITOR_ATTACHMENT_DAILY_BANDWIDTH_LIMIT
- label: "Visitor Attachment Daily Bandwidth Limit"
- description: "Rate limiting: Total daily attachment download/upload traffic limit per visitor. This is to protect your bandwidth costs from exploding."
- schema:
- type: string
- required: true
- default: "500M"
- - variable: NTFY_VISITOR_REQUEST_LIMIT_BURST
- label: "Visitor Request Limit Burst"
- description: "Rate limiting: Allowed GET/PUT/POST requests per second, per visitor. This setting is the initial bucket of requests each visitor has"
- schema:
- type: int
- required: true
- default: 60
- - variable: NTFY_VISITOR_REQUEST_LIMIT_REPLENISH
- label: "Visitor Request Limit Replenish"
- description: "Rate limiting: Strongly related to NTFY_VISITOR_REQUEST_LIMIT_BURST: The rate at which the bucket is refilled."
- schema:
- type: string
- required: true
- default: "5s"
- - variable: NTFY_VISITOR_REQUEST_LIMIT_EXEMPT_HOSTS
- label: "Visitor Request Limit Exempt Hosts"
- description: "Rate limiting: List of hostnames and IPs to be exempt from request rate limiting."
- schema:
- type: string
- default: ""
- - variable: NTFY_VISITOR_EMAIL_LIMIT_BURST
- label: "Visitor Email Limit Burst"
- description: "Rate limiting:Initial limit of e-mails per visitor"
- schema:
- type: int
- required: true
- default: 16
- - variable: NTFY_VISITOR_EMAIL_LIMIT_REPLENISH
- label: "Visitor Email Limit Replenish"
- description: "Rate limiting: Strongly related to NTFY_VISITOR_EMAIL_LIMIT_BURST: The rate at which the bucket is refilled."
- schema:
- type: string
- required: true
- default: "1h"
- - variable: ENABLE_ATTACHMENT_CACHE_DIR
- label: "Enable Attachment Cache Directory"
- description: "If set to true, it enables the attachment dir by setting the NTFY_ATTACHMENT_CACHE_DIR to \"/var/cache/ntfy/attachments\""
- schema:
- type: boolean
- default: false
- show_subquestions_if: true
- subquestions:
- - variable: NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT
- label: "Attachment Total Size Limit"
- description: "Limit of the on-disk attachment cache directory. If the limits is exceeded, new attachments will be rejected."
- schema:
- type: string
- required: true
- default: "5G"
- - variable: NTFY_ATTACHMENT_FILE_SIZE_LIMIT
- label: "Attachment File Size Limit"
- description: "Per-file attachment size limit (e.g. 300k, 2M, 100M). Larger attachment will be rejected."
- schema:
- type: string
- required: true
- default: "15M"
- - variable: NTFY_ATTACHMENT_EXPIRY_DURATION
- label: "Attachment Expiry Duration"
- description: "Duration after which uploaded attachments will be deleted (e.g. 3h, 20h). Strongly affects NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT."
- schema:
- type: string
- required: true
- default: "3h"
- - variable: ENABLE_AUTH_FILE
- label: "Enable Auth File"
- description: "If set to true, it enables the auth file by setting the NTFY_AUTH_FILE to \"/etc/ntfy/user.db\""
- schema:
- type: boolean
- default: false
- show_subquestions_if: true
- subquestions:
- - variable: NTFY_AUTH_DEFAULT_ACCESS
- label: "Auth Default Access"
- description: "Default permissions if no matching entries in the auth database are found."
- schema:
- type: string
- required: true
- default: "read-write"
- enum:
- - value: "read-write"
- description: "read-write"
- - value: "read-only"
- description: "read-only"
- - value: "write-only"
- description: "write-only"
- - value: "deny-all"
- description: "deny-all"
- - variable: ENABLE_SMTP_SETTINGS
- label: "Enable SMTP Settings"
- description: "If set to true, it enables the SMTP settings"
- schema:
- type: boolean
- default: false
- show_subquestions_if: true
- subquestions:
- - variable: NTFY_SMTP_SENDER_ADDR
- label: "SMTP Sender Address"
- description: "SMTP server address to allow email sending"
- schema:
- type: string
- default: ""
- - variable: NTFY_SMTP_SENDER_USER
- label: "SMTP Sender User"
- description: "SMTP user. Only used if e-mail sending is enabled"
- schema:
- type: string
- default: ""
- - variable: NTFY_SMTP_SENDER_PASS
- label: "SMTP Sender Password"
- description: SMTP password. Only used if e-mail sending is enabled"
- schema:
- type: string
- private: true
- default: ""
- - variable: NTFY_SMTP_SENDER_FROM
- label: "SMTP Sender From Address"
- description: "SMTP sender e-mail address. Only used if e-mail sending is enabled"
- schema:
- type: string
- default: ""
- - variable: NTFY_SMTP_SERVER_LISTEN
- label: "SMTP Server Listen"
- description: "Defines the IP address and port the SMTP server will listen on, e.g. :25 or 1.2.3.4:25"
- schema:
- type: string
- default: ""
- - variable: NTFY_SMTP_SERVER_DOMAIN
- label: "SMTP Server Domain"
- description: "SMTP server e-mail domain, e.g. ntfy.sh"
- schema:
- type: string
- default: ""
- - variable: NTFY_SMTP_SERVER_ADDR_PREFIX
- label: "SMTP Server Address Prefix"
- description: "Optional prefix for the e-mail addresses to prevent spam, e.g. ntfy-"
- schema:
- type: string
- default: ""
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -308,12 +310,12 @@ questions:
schema:
type: int
default: 568
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 568
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 568
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/ntfy/templates/NOTES.txt b/charts/stable/ntfy/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/ntfy/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/ntfy/templates/common.yaml b/charts/stable/ntfy/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/ntfy/templates/common.yaml
+++ b/charts/stable/ntfy/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/ntfy/values.yaml b/charts/stable/ntfy/values.yaml
index 455ff987ff9..3010977e23e 100644
--- a/charts/stable/ntfy/values.yaml
+++ b/charts/stable/ntfy/values.yaml
@@ -2,52 +2,11 @@ image:
repository: tccr.io/truecharts/ntfy
tag: 2.1.0@sha256:ccbaacb4ca95fd61ea5b4ac18615a80ccc5ebae7f0a46115d020879e1fdb929e
pullPolicy: IfNotPresent
-
-extraArgs: ["serve"]
-
-env:
- NTFY_LISTEN_HTTP: ":{{ .Values.service.main.ports.main.port }}"
- # User Defined
- NTFY_BASE_URL: "http://localhost:10222"
- NTFY_BEHIND_PROXY: false
- ENABLE_FIREBASE_FILE: false
- ENABLE_CACHE_FILE: false
- ENABLE_ATTACHMENT_CACHE_DIR: false
- ENABLE_AUTH_FILE: false
- # NTFY_CACHE_DURATION: "12h"
- # NTFY_KEEPALIVE_INTERVAL: "45s"
- # NTFY_MANAGER_INTERVAL: "1m"
- # NTFY_GLOBAL_TOPIC_LIMIT: 15000
- # NTFY_VISITOR_SUBSCRIPTION_LIMIT: 30
- # NTFY_VISITOR_ATTACHMENT_TOTAL_SIZE_LIMIT: "100M"
- # NTFY_VISITOR_ATTACHMENT_DAILY_BANDWIDTH_LIMIT: "500M"
- # NTFY_VISITOR_REQUEST_LIMIT_BURST: 60
- # NTFY_VISITOR_REQUEST_LIMIT_REPLENISH: "5s"
- # NTFY_VISITOR_REQUEST_LIMIT_EXEMPT_HOSTS: ""
- # NTFY_VISITOR_EMAIL_LIMIT_BURST: 16
- # NTFY_VISITOR_EMAIL_LIMIT_REPLENISH: "1h"
- # NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT: "5G"
- # NTFY_ATTACHMENT_FILE_SIZE_LIMIT: "15M"
- # NTFY_ATTACHMENT_EXPIRY_DURATION: "3h"
- # NTFY_AUTH_DEFAULT_ACCESS: "read-write"
- # NTFY_SMTP_SENDER_ADDR: ""
- # NTFY_SMTP_SENDER_USER: ""
- # NTFY_SMTP_SENDER_PASS: ""
- # NTFY_SMTP_SENDER_FROM: ""
- # NTFY_SMTP_SERVER_LISTEN: ""
- # NTFY_SMTP_SERVER_DOMAIN: ""
- # NTFY_SMTP_SERVER_ADDR_PREFIX: ""
-
-envFrom:
- - configMapRef:
- name: '{{ include "tc.common.names.fullname" . }}-ntfy'
-
service:
main:
ports:
main:
port: 10222
-
persistence:
config:
enabled: true
@@ -55,16 +14,64 @@ persistence:
cache:
enabled: true
mountPath: "/var/cache/ntfy"
-
configmap:
ntfy:
enabled: true
data:
- # If a path is set, it enables this options. To disable set to emtpy path
- NTFY_ATTACHMENT_CACHE_DIR: '{{ ternary "/var/cache/ntfy/attachments" "" .Values.env.ENABLE_ATTACHMENT_CACHE_DIR }}'
- NTFY_CACHE_FILE: '{{ ternary "/var/cache/ntfy/cache.db" "" .Values.env.ENABLE_CACHE_FILE }}'
- NTFY_AUTH_FILE: '{{ ternary "/etc/ntfy/user.db" "" .Values.env.ENABLE_AUTH_FILE }}'
- NTFY_FIREBASE_KEY_FILE: '{{ ternary "/etc/ntfy/firebase-key.json" "" .Values.env.ENABLE_FIREBASE_FILE }}'
-
+ # If a path is set, it enables this options. To disable set to empty path
+ NTFY_ATTACHMENT_CACHE_DIR: '{{ ternary "/var/cache/ntfy/attachments" "" .Values.workload.main.podSpec.containers.main.env.ENABLE_ATTACHMENT_CACHE_DIR }}'
+ NTFY_CACHE_FILE: '{{ ternary "/var/cache/ntfy/cache.db" "" .Values.workload.main.podSpec.containers.main.env.ENABLE_CACHE_FILE }}'
+ NTFY_AUTH_FILE: '{{ ternary "/etc/ntfy/user.db" "" .Values.workload.main.podSpec.containers.main.env.ENABLE_AUTH_FILE }}'
+ NTFY_FIREBASE_KEY_FILE: '{{ ternary "/etc/ntfy/firebase-key.json" "" .Values.workload.main.podSpec.containers.main.env.ENABLE_FIREBASE_FILE }}'
portal:
- enabled: true
+ open:
+ enabled: true
+
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ args: ["serve"]
+ env:
+ NTFY_LISTEN_HTTP: ":{{ .Values.service.main.ports.main.port }}"
+ # User Defined
+ NTFY_BASE_URL: "http://localhost:10222"
+ NTFY_BEHIND_PROXY: false
+ ENABLE_FIREBASE_FILE: false
+ ENABLE_CACHE_FILE: false
+ ENABLE_ATTACHMENT_CACHE_DIR: false
+ ENABLE_AUTH_FILE: false
+ # NTFY_CACHE_DURATION: "12h"
+ # NTFY_KEEPALIVE_INTERVAL: "45s"
+ # NTFY_MANAGER_INTERVAL: "1m"
+ # NTFY_GLOBAL_TOPIC_LIMIT: 15000
+ # NTFY_VISITOR_SUBSCRIPTION_LIMIT: 30
+ # NTFY_VISITOR_ATTACHMENT_TOTAL_SIZE_LIMIT: "100M"
+ # NTFY_VISITOR_ATTACHMENT_DAILY_BANDWIDTH_LIMIT: "500M"
+ # NTFY_VISITOR_REQUEST_LIMIT_BURST: 60
+ # NTFY_VISITOR_REQUEST_LIMIT_REPLENISH: "5s"
+ # NTFY_VISITOR_REQUEST_LIMIT_EXEMPT_HOSTS: ""
+ # NTFY_VISITOR_EMAIL_LIMIT_BURST: 16
+ # NTFY_VISITOR_EMAIL_LIMIT_REPLENISH: "1h"
+ # NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT: "5G"
+ # NTFY_ATTACHMENT_FILE_SIZE_LIMIT: "15M"
+ # NTFY_ATTACHMENT_EXPIRY_DURATION: "3h"
+ # NTFY_AUTH_DEFAULT_ACCESS: "read-write"
+ # NTFY_SMTP_SENDER_ADDR: ""
+ # NTFY_SMTP_SENDER_USER: ""
+ # NTFY_SMTP_SENDER_PASS: ""
+ # NTFY_SMTP_SENDER_FROM: ""
+ # NTFY_SMTP_SERVER_LISTEN: ""
+ # NTFY_SMTP_SERVER_DOMAIN: ""
+ # NTFY_SMTP_SERVER_ADDR_PREFIX: ""
+ envFrom:
+ - configMapRef:
+ name: "ntfy"
diff --git a/charts/stable/openhab/Chart.yaml b/charts/stable/openhab/Chart.yaml
index 58c6489139b..6c68c4101b0 100644
--- a/charts/stable/openhab/Chart.yaml
+++ b/charts/stable/openhab/Chart.yaml
@@ -1,9 +1,9 @@
apiVersion: v2
-appVersion: "3.4.3"
+appVersion: "3.4.2"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: OpenHab is a home-automation application
home: https://truecharts.org/charts/stable/openhab
@@ -19,10 +19,9 @@ name: openhab
sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/openhab
type: application
-version: 4.0.13
+version: 5.0.0
annotations:
truecharts.org/catagories: |
- media
- test
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/openhab/questions.yaml b/charts/stable/openhab/questions.yaml
index 91b77e0eb6e..7b72d8748a0 100644
--- a/charts/stable/openhab/questions.yaml
+++ b/charts/stable/openhab/questions.yaml
@@ -10,10 +10,12 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+
# Include{containerBasic}
# Include{containerAdvanced}
-
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -108,12 +110,12 @@ questions:
schema:
type: int
default: 0
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/openhab/templates/NOTES.txt b/charts/stable/openhab/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/openhab/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/openhab/templates/common.yaml b/charts/stable/openhab/templates/common.yaml
index b9e7208f382..995efb03eb0 100644
--- a/charts/stable/openhab/templates/common.yaml
+++ b/charts/stable/openhab/templates/common.yaml
@@ -1,5 +1,5 @@
{{/* Make sure all variables are set properly */}}
-{{- include "tc.common.loader.init" . }}
+{{- include "tc.v1.common.loader.init" . }}
{{/* Render the templates */}}
-{{ include "tc.common.loader.apply" . }}
+{{ include "tc.v1.common.loader.apply" . }}
diff --git a/charts/stable/openhab/values.yaml b/charts/stable/openhab/values.yaml
index f865e566b9e..1fbfb7b6da6 100644
--- a/charts/stable/openhab/values.yaml
+++ b/charts/stable/openhab/values.yaml
@@ -1,22 +1,20 @@
image:
repository: tccr.io/truecharts/openhab
pullPolicy: IfNotPresent
- tag: 3.4.3@sha256:d0aa6f705e7491678210ce7819b1ca0a9a77555c94bcf7ad931e0b70f5ac6e90
-
+ tag: 3.4.2@sha256:bb3fdf98084426d18ff82b3e576a93c88570e9b037066db5b25fd9d661aaf3d1
service:
main:
ports:
main:
- protocol: HTTP
+ protocol: http
port: 10169
https:
enabled: true
ports:
https:
- protocol: HTTPS
+ protocol: https
enabled: true
port: 10170
-
configmap:
init:
enabled: true
@@ -24,19 +22,6 @@ configmap:
enable-console-logging.sh: |
echo 'Enabling console logging.'
sed -i -E 's|().*|\1|' /openhab/userdata/etc/log4j2.xml
-
-securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
-
-env:
- OPENHAB_HTTP_PORT: "{{ .Values.service.main.ports.main.port }}"
- OPENHAB_HTTPS_PORT: "{{ .Values.service.https.ports.https.port }}"
-
persistence:
config:
enabled: true
@@ -51,10 +36,29 @@ persistence:
enabled: true
mountPath: /etc/cont-init.d/enable-console-logging.sh
subPath: enable-console-logging.sh
- type: custom
- volumeSpec:
- configMap:
- name: '{{ printf "%v-init" (include "tc.common.names.fullname" .) }}'
-
+ type: configmap
+ objectName: init
portal:
- enabled: true
+ open:
+ enabled: true
+securityContext:
+ container:
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ env:
+ OPENHAB_HTTP_PORT: "{{ .Values.service.main.ports.main.port }}"
+ OPENHAB_HTTPS_PORT: "{{ .Values.service.https.ports.https.port }}"
diff --git a/charts/stable/putty/Chart.yaml b/charts/stable/putty/Chart.yaml
index a26d833d9fc..b6770512109 100644
--- a/charts/stable/putty/Chart.yaml
+++ b/charts/stable/putty/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "23.02.2"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: PuTTY is a free and open-source terminal emulator, serial console and network file transfer application.
home: https://truecharts.org/charts/stable/putty
@@ -21,9 +21,8 @@ sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/putty
- https://github.com/jlesage/docker-putty
type: application
-version: 3.0.12
+version: 4.0.0
annotations:
truecharts.org/catagories: |
- utilities
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/putty/questions.yaml b/charts/stable/putty/questions.yaml
index d5faa55c856..d92abe1f94e 100644
--- a/charts/stable/putty/questions.yaml
+++ b/charts/stable/putty/questions.yaml
@@ -11,23 +11,24 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: VNC_PASSWORD
+ label: "VNC_PASSWORD"
+ description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
+ schema:
+ type: string
+ private: true
+ default: ""
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: secretEnv
- group: "App Configuration"
- label: "Image Secrets"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: VNC_PASSWORD
- label: "VNC_PASSWORD"
- description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
- schema:
- type: string
- private: true
- default: ""
- variable: putty
group: "App Configuration"
label: "PuTTY Configuration"
@@ -81,7 +82,9 @@ questions:
schema:
type: boolean
default: false
+
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -160,12 +163,12 @@ questions:
schema:
type: int
default: 0
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/putty/templates/NOTES.txt b/charts/stable/putty/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/putty/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/putty/templates/common.yaml b/charts/stable/putty/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/putty/templates/common.yaml
+++ b/charts/stable/putty/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/putty/values.yaml b/charts/stable/putty/values.yaml
index 38e2c1b7d24..1c8b2da6ed9 100644
--- a/charts/stable/putty/values.yaml
+++ b/charts/stable/putty/values.yaml
@@ -2,15 +2,6 @@ image:
repository: tccr.io/truecharts/putty
tag: 23.02.2@sha256:4bec4d770722ee284dcb7db8250768a62d72a5f29c54ed547458c2450f0676a5
pullPolicy: IfNotPresent
-
-securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
-
service:
main:
ports:
@@ -24,14 +15,6 @@ service:
enabled: true
port: 10267
targetPort: 5900
-
-envFrom:
- - configMapRef:
- name: '{{ include "tc.common.names.fullname" . }}-putty'
-
-secretEnv:
- VNC_PASSWORD: ""
-
putty:
KEEP_APP_RUNNING: false
DISPLAY_WIDTH: 1280
@@ -39,7 +22,6 @@ putty:
SECURE_CONNECTION: false
DISABLE_RESTART_SESSION_DIALOG_WINDOW: false
ENABLE_CJK_FONT: false
-
configmap:
putty:
enabled: true
@@ -50,11 +32,38 @@ configmap:
DISABLE_RESTART_SESSION_DIALOG_WINDOW: '{{ ternary "1" "0" .Values.putty.DISABLE_RESTART_SESSION_DIALOG_WINDOW }}'
DISPLAY_WIDTH: "{{ .Values.putty.DISPLAY_WIDTH }}"
DISPLAY_HEIGHT: "{{ .Values.putty.DISPLAY_HEIGHT }}"
-
persistence:
config:
enabled: true
mountPath: "/config"
-
portal:
- enabled: true
+ open:
+ enabled: true
+securityContext:
+ container:
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ securityContext:
+ capabilities:
+ add:
+ - NET_BIND_SERVICE
+ - KILL
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ env:
+ VNC_PASSWORD: ""
+ envFrom:
+ - configMapRef:
+ name: "putty"
diff --git a/charts/stable/qdirstat/Chart.yaml b/charts/stable/qdirstat/Chart.yaml
index a67bf167b84..8792500879d 100644
--- a/charts/stable/qdirstat/Chart.yaml
+++ b/charts/stable/qdirstat/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "23.02.2"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: QDirStat is a graphical application to show where your disk space has gone and to help you to clean it up.
home: https://truecharts.org/charts/stable/qdirstat
@@ -21,9 +21,8 @@ sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/qdirstat
- https://github.com/jlesage/docker-qdirstat
type: application
-version: 3.0.13
+version: 4.0.0
annotations:
truecharts.org/catagories: |
- media
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/qdirstat/questions.yaml b/charts/stable/qdirstat/questions.yaml
index e020094c16b..e7110af1895 100644
--- a/charts/stable/qdirstat/questions.yaml
+++ b/charts/stable/qdirstat/questions.yaml
@@ -11,23 +11,24 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: VNC_PASSWORD
+ label: "VNC_PASSWORD"
+ description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
+ schema:
+ type: string
+ private: true
+ default: ""
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: secretEnv
- group: "App Configuration"
- label: "Image Secrets"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: VNC_PASSWORD
- label: "VNC_PASSWORD"
- description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
- schema:
- type: string
- private: true
- default: ""
- variable: qdirstat
group: "App Configuration"
label: "QDirStat Configuration"
@@ -75,7 +76,9 @@ questions:
schema:
type: boolean
default: false
+
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -162,12 +165,12 @@ questions:
schema:
type: int
default: 0
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/qdirstat/templates/NOTES.txt b/charts/stable/qdirstat/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/qdirstat/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/qdirstat/templates/common.yaml b/charts/stable/qdirstat/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/qdirstat/templates/common.yaml
+++ b/charts/stable/qdirstat/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/qdirstat/values.yaml b/charts/stable/qdirstat/values.yaml
index d807c7ef910..e1c21e83137 100644
--- a/charts/stable/qdirstat/values.yaml
+++ b/charts/stable/qdirstat/values.yaml
@@ -2,15 +2,6 @@ image:
repository: tccr.io/truecharts/qdirstat
tag: 23.02.2@sha256:acb8020059c185a9f5888ee59090d8663cfb483c76be9f93cb0771f637834019
pullPolicy: IfNotPresent
-
-securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
-
service:
main:
ports:
@@ -24,21 +15,12 @@ service:
enabled: true
port: 10263
targetPort: 5900
-
-envFrom:
- - configMapRef:
- name: '{{ include "tc.common.names.fullname" . }}-qdirstat'
-
-secretEnv:
- VNC_PASSWORD: ""
-
qdirstat:
KEEP_APP_RUNNING: false
DISPLAY_WIDTH: 1280
DISPLAY_HEIGHT: 768
SECURE_CONNECTION: false
ENABLE_CJK_FONT: false
-
configmap:
qdirstat:
enabled: true
@@ -48,7 +30,6 @@ configmap:
SECURE_CONNECTION: '{{ ternary "1" "0" .Values.qdirstat.SECURE_CONNECTION }}'
DISPLAY_WIDTH: "{{ .Values.qdirstat.DISPLAY_WIDTH }}"
DISPLAY_HEIGHT: "{{ .Values.qdirstat.DISPLAY_HEIGHT }}"
-
persistence:
config:
enabled: true
@@ -56,6 +37,34 @@ persistence:
storage:
enabled: true
mountPath: "/storage"
-
portal:
- enabled: true
+ open:
+ enabled: true
+securityContext:
+ container:
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ securityContext:
+ capabilities:
+ add:
+ - NET_BIND_SERVICE
+ - KILL
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ env:
+ VNC_PASSWORD: ""
+ envFrom:
+ - configMapRef:
+ name: "qdirstat"
diff --git a/charts/stable/tsmuxer/Chart.yaml b/charts/stable/tsmuxer/Chart.yaml
index 858f44f21fa..e38253d775d 100644
--- a/charts/stable/tsmuxer/Chart.yaml
+++ b/charts/stable/tsmuxer/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "23.02.3"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: tsMuxer is a Transport Stream muxer.
home: https://truecharts.org/charts/stable/tsmuxer
@@ -21,9 +21,8 @@ sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/tsmuxer
- https://github.com/jlesage/docker-tsmuxer
type: application
-version: 3.0.14
+version: 4.0.0
annotations:
truecharts.org/catagories: |
- media
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/tsmuxer/questions.yaml b/charts/stable/tsmuxer/questions.yaml
index ee6e2300df1..66fa09b018f 100644
--- a/charts/stable/tsmuxer/questions.yaml
+++ b/charts/stable/tsmuxer/questions.yaml
@@ -11,23 +11,24 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: VNC_PASSWORD
+ label: "VNC_PASSWORD"
+ description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
+ schema:
+ type: string
+ private: true
+ default: ""
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: secretEnv
- group: "App Configuration"
- label: "Image Secrets"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: VNC_PASSWORD
- label: "VNC_PASSWORD"
- description: "Password needed to connect to the application's GUI. See the VNC Password section for more details."
- schema:
- type: string
- private: true
- default: ""
- variable: tsmuxer
group: "App Configuration"
label: "tsMuxeR Configuration"
@@ -75,7 +76,9 @@ questions:
schema:
type: boolean
default: false
+
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -162,12 +165,12 @@ questions:
schema:
type: int
default: 0
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/tsmuxer/templates/NOTES.txt b/charts/stable/tsmuxer/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/tsmuxer/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/tsmuxer/templates/common.yaml b/charts/stable/tsmuxer/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/tsmuxer/templates/common.yaml
+++ b/charts/stable/tsmuxer/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/tsmuxer/values.yaml b/charts/stable/tsmuxer/values.yaml
index 344065feea9..217ce1307c5 100644
--- a/charts/stable/tsmuxer/values.yaml
+++ b/charts/stable/tsmuxer/values.yaml
@@ -2,15 +2,6 @@ image:
repository: tccr.io/truecharts/tsmuxer
tag: 23.02.3@sha256:9b419b4806415d38b9455e0c4513df2234daee5d0696d8b8fb91bb5f54ac2174
pullPolicy: IfNotPresent
-
-securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
-
service:
main:
ports:
@@ -24,21 +15,12 @@ service:
enabled: true
port: 10275
targetPort: 5900
-
-envFrom:
- - configMapRef:
- name: '{{ include "tc.common.names.fullname" . }}-tsmuxer'
-
-secretEnv:
- VNC_PASSWORD: ""
-
tsmuxer:
KEEP_APP_RUNNING: false
DISPLAY_WIDTH: 1280
DISPLAY_HEIGHT: 768
SECURE_CONNECTION: false
ENABLE_CJK_FONT: false
-
configmap:
tsmuxer:
enabled: true
@@ -48,7 +30,6 @@ configmap:
SECURE_CONNECTION: '{{ ternary "1" "0" .Values.tsmuxer.SECURE_CONNECTION }}'
DISPLAY_WIDTH: "{{ .Values.tsmuxer.DISPLAY_WIDTH }}"
DISPLAY_HEIGHT: "{{ .Values.tsmuxer.DISPLAY_HEIGHT }}"
-
persistence:
config:
enabled: true
@@ -56,6 +37,34 @@ persistence:
storage:
enabled: true
mountPath: "/storage"
-
portal:
- enabled: true
+ open:
+ enabled: true
+securityContext:
+ container:
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ securityContext:
+ capabilities:
+ add:
+ - NET_BIND_SERVICE
+ - KILL
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ env:
+ VNC_PASSWORD: ""
+ envFrom:
+ - configMapRef:
+ name: "tsmuxer"
diff --git a/charts/stable/vikunja/Chart.yaml b/charts/stable/vikunja/Chart.yaml
index 4acd0d95e69..4280b7c08b0 100644
--- a/charts/stable/vikunja/Chart.yaml
+++ b/charts/stable/vikunja/Chart.yaml
@@ -3,15 +3,12 @@ appVersion: "0.20.2"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
- - condition: postgresql.enabled
- name: postgresql
- repository: https://deps.truecharts.org/
- version: 11.0.31
+ version: 12.6.1
+
- condition: redis.enabled
name: redis
repository: https://deps.truecharts.org
- version: 5.0.33
+ version: 6.0.21
description: The to-do app to organize your life.
home: https://truecharts.org/charts/stable/vikunja
icon: https://truecharts.org/img/hotlink-ok/chart-icons/vikunja.png
@@ -26,9 +23,8 @@ name: vikunja
sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/vikunja
- https://vikunja.io/docs
-version: 7.0.1
+version: 8.0.0
annotations:
truecharts.org/catagories: |
- productivity
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/vikunja/questions.yaml b/charts/stable/vikunja/questions.yaml
index ac0181c3991..ba75c9c210e 100644
--- a/charts/stable/vikunja/questions.yaml
+++ b/charts/stable/vikunja/questions.yaml
@@ -838,7 +838,9 @@ questions:
type: string
required: true
default: /migrate/microsoft-todo
+
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: Main Service
@@ -888,31 +890,32 @@ questions:
# Include{ingressTraefik}
# Include{ingressList}
-# Include{podSecurityContextRoot}
- - variable: runAsUser
- label: runAsUser
- description: The UserID of the user running the application
- schema:
- type: int
- default: 0
- - variable: runAsGroup
- label: runAsGroup
- description: The groupID this App of the user running the application
- schema:
- type: int
- default: 0
+# Include{securityContextRoot}
+ - variable: runAsUser
+ label: "runAsUser"
+ description: "The UserID of the user running the application"
+ schema:
+ type: int
+ default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
- - variable: fsGroup
- label: fsGroup
- description: The group that should own ALL storage.
- schema:
- type: int
- default: 568
+ - variable: fsGroup
+ label: "fsGroup"
+ description: "The group that should own ALL storage."
+ schema:
+ type: int
+ default: 568
# Include{resources}
# Include{metrics}
+# Include{prometheusRule}
# Include{advanced}
# Include{addons}
# Include{codeserver}
diff --git a/charts/stable/vikunja/templates/NOTES.txt b/charts/stable/vikunja/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/vikunja/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/vikunja/templates/_secrets.tpl b/charts/stable/vikunja/templates/_secrets.tpl
index 935a1c78fa6..771b2610db0 100644
--- a/charts/stable/vikunja/templates/_secrets.tpl
+++ b/charts/stable/vikunja/templates/_secrets.tpl
@@ -1,189 +1,196 @@
{{/* Define the secrets */}}
{{- define "vikunja.secrets" -}}
-{{- $secretName := printf "%s-secret" (include "tc.common.names.fullname" .) -}}
-{{- $secretStorage := printf "%s-storage-secret" (include "tc.common.names.fullname" .) -}}
-
+{{- $secretStorage := printf "%s-storage-secret" (include "tc.v1.common.lib.chart.names.fullname" .) -}}
+{{- $pgHost := printf "%v-cnpg-main-rw" (include "tc.v1.common.lib.chart.names.fullname" $) -}}
{{- $jwtSecret := randAlphaNum 32 -}}
{{- with lookup "v1" "Secret" .Release.Namespace $secretStorage -}}
{{- $jwtSecret = index .data "JWT_SECRET" | b64dec -}}
{{- end }}
----
-apiVersion: v1
-kind: Secret
-type: Opaque
-metadata:
- name: {{ $secretStorage }}
- labels:
- {{- include "tc.common.labels" . | nindent 4 }}
-data:
- JWT_SECRET: {{ $jwtSecret | b64enc }}
----
-apiVersion: v1
-kind: Secret
-type: Opaque
-metadata:
- name: {{ $secretName }}
- labels:
- {{- include "tc.common.labels" . | nindent 4 }}
-stringData:
- config.yml: |
- database:
- type: postgres
- user: {{ .Values.postgresql.postgresqlUsername }}
- password: {{ .Values.postgresql.postgresqlPassword | trimAll "\"" }}
- host: {{ printf "%v-%v" .Release.Name "postgres" }}
+secret:
+ secret-storage:
+ enabled: true
+ data:
+ JWT_SECRET: {{ $jwtSecret }}
- cache:
- enabled: true
- type: redis
+ config:
+ enabled: true
+ data:
+ config.yaml: |
+ database:
+ type: postgres
+ user: {{ .Values.cnpg.main.user }}
+ password: {{ .Values.cnpg.main.creds.password | trimAll "\"" }}
+ host: {{ $pgHost }}
- redis:
- enabled: true
- host: {{ printf "%v-%v:%v" .Release.Name "redis" "6379" }}
- password: {{ .Values.redis.redisPassword | trimAll "\""}}
- db: 0
+ cache:
+ enabled: true
+ type: redis
- keyvalue:
- type: redis
+ redis:
+ enabled: true
+ host: {{ printf "%v-%v:%v" .Release.Name "redis" "6379" }}
+ password: {{ .Values.redis.creds.redisPassword | trimAll "\""}}
+ db: 0
- service:
- interface: ":3456"
- JWTSecret: {{ $jwtSecret }}
- timezone: {{ .Values.TZ | quote }}
- jwtttl: {{ .Values.vikunja.service.jwtttl | int }}
- jwtttllong: {{ .Values.vikunja.service.jwtttllong | int }}
- frontendurl: {{ .Values.vikunja.service.frontendurl | quote }}
- maxitemsperpage: {{ .Values.vikunja.service.maxitemsperpage }}
- enablecaldav: {{ .Values.vikunja.service.enablecaldav }}
- motd: {{ .Values.vikunja.service.motd | quote }}
- enablelinksharing: {{ .Values.vikunja.service.enablelinksharing }}
- enableregistration: {{ .Values.vikunja.service.enableregistration }}
- enabletaskattachments: {{ .Values.vikunja.service.enabletaskattachments }}
- enabletaskcomments: {{ .Values.vikunja.service.enabletaskcomments }}
- enabletotp: {{ .Values.vikunja.service.enabletotp }}
- enableemailreminders: {{ .Values.vikunja.service.enableemailreminders }}
- enableuserdeletion: {{ .Values.vikunja.service.enableuserdeletion }}
- maxavatarsize: {{ .Values.vikunja.service.maxavatarsize }}
+ keyvalue:
+ type: redis
- metrics:
- enabled: {{ .Values.metrics.enabled }}
+ service:
+ interface: ":3456"
+ JWTSecret: {{ $jwtSecret }}
+ timezone: {{ .Values.TZ | quote }}
+ {{- /* Multiply by 1, so large integers are not rendered in scientific notation
+ See: https://github.com/helm/helm/issues/1707#issuecomment-1167860346 */}}
+ jwtttl: {{ mul .Values.vikunja.service.jwtttl 1 }}
+ jwtttllong: {{ mul .Values.vikunja.service.jwtttllong 1 }}
+ frontendurl: {{ .Values.vikunja.service.frontendurl | quote }}
+ maxitemsperpage: {{ .Values.vikunja.service.maxitemsperpage }}
+ enablecaldav: {{ .Values.vikunja.service.enablecaldav }}
+ motd: {{ .Values.vikunja.service.motd | quote }}
+ enablelinksharing: {{ .Values.vikunja.service.enablelinksharing }}
+ enableregistration: {{ .Values.vikunja.service.enableregistration }}
+ enabletaskattachments: {{ .Values.vikunja.service.enabletaskattachments }}
+ enabletaskcomments: {{ .Values.vikunja.service.enabletaskcomments }}
+ enabletotp: {{ .Values.vikunja.service.enabletotp }}
+ enableemailreminders: {{ .Values.vikunja.service.enableemailreminders }}
+ enableuserdeletion: {{ .Values.vikunja.service.enableuserdeletion }}
+ maxavatarsize: {{ .Values.vikunja.service.maxavatarsize }}
- cors:
- enabled: {{ .Values.vikunja.cors.enabled }}
- {{- with .Values.vikunja.cors.origins }}
- origins:
- {{- range . }}
- - {{ . | quote }}
- {{- end }}
- {{- else }}
- origins: []
- {{- end }}
- maxage: {{ .Values.vikunja.cors.maxage }}
+ metrics:
+ enabled: {{ .Values.metrics.enabled }}
- mailer:
- enabled: {{ .Values.vikunja.mailer.enabled }}
- host: {{ .Values.vikunja.mailer.host | quote }}
- port: {{ .Values.vikunja.mailer.port }}
- authtype: {{ .Values.vikunja.mailer.authtype | quote }}
- username: {{ .Values.vikunja.mailer.username | quote }}
- password: {{ .Values.vikunja.mailer.password | quote }}
- skiptlsverify: {{ .Values.vikunja.mailer.skiptlsverify }}
- fromemail: {{ .Values.vikunja.mailer.fromemail | quote }}
- queuelength: {{ .Values.vikunja.mailer.queuelength }}
- queuetimeout: {{ .Values.vikunja.mailer.queuetimeout }}
- forcessl: {{ .Values.vikunja.mailer.forcessl }}
-
- log:
- enabled: {{ .Values.vikunja.log.enabled }}
- path: {{ .Values.vikunja.log.path | quote }}
- standard: {{ .Values.vikunja.log.standard | quote }}
- level: {{ .Values.vikunja.log.level | quote }}
- database: {{ .Values.vikunja.log.database | quote }}}
- databaselevel: {{ .Values.vikunja.log.databaselevel | quote }}
- http: {{ .Values.vikunja.log.http | quote }}
- echo: {{ .Values.vikunja.log.echo | quote }}}
- events: {{ .Values.vikunja.log.events | quote }}
- eventslevel: {{ .Values.vikunja.log.eventslevel | quote }}
-
- ratelimit:
- enabled: {{ .Values.vikunja.ratelimit.enabled }}}
- kind: {{ .Values.vikunja.ratelimit.kind | quote }}
- period: {{ .Values.vikunja.ratelimit.period }}
- limit: {{ .Values.vikunja.ratelimit.limit }}
- store: redis
-
- files:
- maxsize: {{ .Values.vikunja.files.maxsize }}
-
- avatar:
- gravatarexpiration: {{ .Values.vikunja.avatar.gravatarexpiration }}
-
- legal:
- imprinturl: {{ .Values.vikunja.legal.imprinturl | quote }}
- privacyurl: {{ .Values.vikunja.legal.privacyurl | quote }}
-
- backgrounds:
- enabled: {{ .Values.vikunja.backgrounds.enabled }}
- providers:
- upload:
- enabled: {{ .Values.vikunja.backgrounds.providers.upload.enabled }}
- unsplash:
- enabled: {{ .Values.vikunja.backgrounds.providers.unsplash.enabled }}
- accesstoken: {{ .Values.vikunja.backgrounds.providers.unsplash.accesstoken | quote }}
- applicationid: {{ .Values.vikunja.backgrounds.providers.unsplash.applicationid | quote }}
-
- migration:
- todoist:
- enable: {{ .Values.vikunja.migration.todoist.enable }}
- clientid: {{ .Values.vikunja.migration.todoist.clientid | quote }}
- clientsecret: {{ .Values.vikunja.migration.todoist.clientsecret | quote }}
- redirecturl: {{ .Values.vikunja.migration.todoist.redirecturl | quote }}
- trello:
- enable: {{ .Values.vikunja.migration.trello.enable }}
- key: {{ .Values.vikunja.migration.trello.key | quote }}
- redirecturl: {{ .Values.vikunja.migration.trello.redirecturl | quote }}
- microsofttodo:
- enable: {{ .Values.vikunja.migration.microsofttodo.enable }}
- clientid: {{ .Values.vikunja.migration.microsofttodo.clientid | quote }}
- clientsecret: {{ .Values.vikunja.migration.microsofttodo.clientsecret | quote }}
- redirecturl: {{ .Values.vikunja.migration.microsofttodo.redirecturl | quote }}
-
- auth:
- local:
- enabled: {{ .Values.vikunja.auth.local.enabled }}
- openid:
- enabled: {{ .Values.vikunja.auth.openid.enabled }}
- {{- with .Values.vikunja.auth.openid.redirecturl }}
- redirecturl: {{ . | quote }}
- {{- end }}
- {{- with .Values.vikunja.auth.openid.providers }}
- providers:
- {{- range . }}
- - name: {{ .name | quote }}
- authurl: {{ .authurl | quote }}
- {{- with .logouturl }}
- logouturl: {{ . | quote }}
+ cors:
+ enabled: {{ .Values.vikunja.cors.enabled }}
+ {{- with .Values.vikunja.cors.origins }}
+ origins:
+ {{- range . }}
+ - {{ . | quote }}
{{- end }}
- clientid: {{ .clientid | quote }}
- clientsecret: {{ .clientsecret | quote }}
+ {{- else }}
+ origins: []
{{- end }}
- {{- end }}
+ maxage: {{ .Values.vikunja.cors.maxage }}
- defaultsettings:
- avatar_provider: {{ .Values.vikunja.defaultsettings.avatar_provider | quote }}
- avatar_file_id: {{ .Values.vikunja.defaultsettings.avatar_file_id }}
- email_reminders_enabled: {{ .Values.vikunja.defaultsettings.email_reminders_enabled }}
- discoverable_by_name: {{ .Values.vikunja.defaultsettings.discoverable_by_name }}
- discoverable_by_email: {{ .Values.vikunja.defaultsettings.discoverable_by_email }}
- overdue_tasks_reminders_enabled: {{ .Values.vikunja.defaultsettings.overdue_tasks_reminders_enabled }}
- overdue_tasks_reminders_time: {{ .Values.vikunja.defaultsettings.overdue_tasks_reminders_time | quote }}
- default_list_id: {{ .Values.vikunja.defaultsettings.default_list_id }}
- week_start: {{ .Values.vikunja.defaultsettings.week_start }}
- {{- with .Values.vikunja.defaultsettings.language }}
- language: {{ . | quote }}
- {{- end }}
- {{- with .Values.vikunja.defaultsettings.timezone }}
- timezone: {{ . | quote }}
- {{- end }}
+ mailer:
+ enabled: {{ .Values.vikunja.mailer.enabled }}
+ host: {{ .Values.vikunja.mailer.host | quote }}
+ port: {{ .Values.vikunja.mailer.port }}
+ authtype: {{ .Values.vikunja.mailer.authtype | quote }}
+ username: {{ .Values.vikunja.mailer.username | quote }}
+ password: {{ .Values.vikunja.mailer.password | quote }}
+ skiptlsverify: {{ .Values.vikunja.mailer.skiptlsverify }}
+ fromemail: {{ .Values.vikunja.mailer.fromemail | quote }}
+ queuelength: {{ .Values.vikunja.mailer.queuelength }}
+ queuetimeout: {{ .Values.vikunja.mailer.queuetimeout }}
+ forcessl: {{ .Values.vikunja.mailer.forcessl }}
+
+ log:
+ enabled: {{ .Values.vikunja.log.enabled }}
+ path: {{ .Values.vikunja.log.path | quote }}
+ standard: {{ .Values.vikunja.log.standard | quote }}
+ level: {{ .Values.vikunja.log.level | quote }}
+ database: {{ .Values.vikunja.log.database | quote }}
+ databaselevel: {{ .Values.vikunja.log.databaselevel | quote }}
+ http: {{ .Values.vikunja.log.http | quote }}
+ echo: {{ .Values.vikunja.log.echo | quote }}
+ events: {{ .Values.vikunja.log.events | quote }}
+ eventslevel: {{ .Values.vikunja.log.eventslevel | quote }}
+
+ ratelimit:
+ enabled: {{ .Values.vikunja.ratelimit.enabled }}
+ kind: {{ .Values.vikunja.ratelimit.kind | quote }}
+ period: {{ .Values.vikunja.ratelimit.period }}
+ limit: {{ .Values.vikunja.ratelimit.limit }}
+ store: redis
+
+ files:
+ maxsize: {{ .Values.vikunja.files.maxsize }}
+
+ avatar:
+ gravatarexpiration: {{ .Values.vikunja.avatar.gravatarexpiration }}
+
+ legal:
+ imprinturl: {{ .Values.vikunja.legal.imprinturl | quote }}
+ privacyurl: {{ .Values.vikunja.legal.privacyurl | quote }}
+
+ backgrounds:
+ enabled: {{ .Values.vikunja.backgrounds.enabled }}
+ providers:
+ upload:
+ enabled: {{ .Values.vikunja.backgrounds.providers.upload.enabled }}
+ unsplash:
+ enabled: {{ .Values.vikunja.backgrounds.providers.unsplash.enabled }}
+ accesstoken: {{ .Values.vikunja.backgrounds.providers.unsplash.accesstoken | quote }}
+ applicationid: {{ .Values.vikunja.backgrounds.providers.unsplash.applicationid | quote }}
+
+ migration:
+ todoist:
+ enable: {{ .Values.vikunja.migration.todoist.enable }}
+ clientid: {{ .Values.vikunja.migration.todoist.clientid | quote }}
+ clientsecret: {{ .Values.vikunja.migration.todoist.clientsecret | quote }}
+ redirecturl: {{ .Values.vikunja.migration.todoist.redirecturl | quote }}
+ trello:
+ enable: {{ .Values.vikunja.migration.trello.enable }}
+ key: {{ .Values.vikunja.migration.trello.key | quote }}
+ redirecturl: {{ .Values.vikunja.migration.trello.redirecturl | quote }}
+ microsofttodo:
+ enable: {{ .Values.vikunja.migration.microsofttodo.enable }}
+ clientid: {{ .Values.vikunja.migration.microsofttodo.clientid | quote }}
+ clientsecret: {{ .Values.vikunja.migration.microsofttodo.clientsecret | quote }}
+ redirecturl: {{ .Values.vikunja.migration.microsofttodo.redirecturl | quote }}
+
+ auth:
+ local:
+ enabled: {{ .Values.vikunja.auth.local.enabled }}
+ openid:
+ enabled: {{ .Values.vikunja.auth.openid.enabled }}
+ {{- with .Values.vikunja.auth.openid.redirecturl }}
+ redirecturl: {{ . | quote }}
+ {{- end }}
+ {{- with .Values.vikunja.auth.openid.providers }}
+ providers:
+ {{- range . }}
+ - name: {{ .name | quote }}
+ authurl: {{ .authurl | quote }}
+ {{- with .logouturl }}
+ logouturl: {{ . | quote }}
+ {{- end }}
+ clientid: {{ .clientid | quote }}
+ clientsecret: {{ .clientsecret | quote }}
+ {{- end }}
+ {{- end }}
+
+ defaultsettings:
+ avatar_provider: {{ .Values.vikunja.defaultsettings.avatar_provider | quote }}
+ avatar_file_id: {{ .Values.vikunja.defaultsettings.avatar_file_id }}
+ email_reminders_enabled: {{ .Values.vikunja.defaultsettings.email_reminders_enabled }}
+ discoverable_by_name: {{ .Values.vikunja.defaultsettings.discoverable_by_name }}
+ discoverable_by_email: {{ .Values.vikunja.defaultsettings.discoverable_by_email }}
+ overdue_tasks_reminders_enabled: {{ .Values.vikunja.defaultsettings.overdue_tasks_reminders_enabled }}
+ overdue_tasks_reminders_time: {{ .Values.vikunja.defaultsettings.overdue_tasks_reminders_time | quote }}
+ default_list_id: {{ .Values.vikunja.defaultsettings.default_list_id }}
+ week_start: {{ .Values.vikunja.defaultsettings.week_start }}
+ {{- with .Values.vikunja.defaultsettings.language }}
+ language: {{ . | quote }}
+ {{- end }}
+ {{- with .Values.vikunja.defaultsettings.timezone }}
+ timezone: {{ . | quote }}
+ {{- end }}
+
+configmap:
+ nginx-config:
+ enabled: true
+ data:
+ nginx-config: |
+ server {
+ listen {{ .Values.service.main.ports.main.port }};
+ location / {
+ proxy_pass http://localhost:80;
+ }
+ location ~* ^/(api|dav|\.well-known)/ {
+ proxy_pass http://localhost:3456;
+ client_max_body_size {{ .Values.vikunja.files.maxsize | upper | trimSuffix "B" }};
+ }
+ }
{{- end -}}
diff --git a/charts/stable/vikunja/templates/common.yaml b/charts/stable/vikunja/templates/common.yaml
index c0f4269ca5d..13ae3d62bed 100644
--- a/charts/stable/vikunja/templates/common.yaml
+++ b/charts/stable/vikunja/templates/common.yaml
@@ -1,5 +1,8 @@
-{{- include "tc.common.loader.init" . }}
+{{- include "tc.v1.common.loader.init" . }}
-{{ include "vikunja.secrets" . }}
+{{- $secrets := include "vikunja.secrets" . | fromYaml -}}
+{{- if $secrets -}}
+ {{- $_ := mustMergeOverwrite .Values $secrets -}}
+{{- end -}}
-{{ include "tc.common.loader.apply" . }}
+{{ include "tc.v1.common.loader.apply" . }}
diff --git a/charts/stable/vikunja/values.yaml b/charts/stable/vikunja/values.yaml
index c94bc8a8212..e67e1daeb6c 100644
--- a/charts/stable/vikunja/values.yaml
+++ b/charts/stable/vikunja/values.yaml
@@ -2,39 +2,58 @@ image:
repository: tccr.io/truecharts/vikunja-api
tag: 0.20.2@sha256:408c9e649901a27bf7f9b6f009de0e90e6c898413b1bc95f49c5ee9051f82dc0
pullPolicy: IfNotPresent
-
frontendImage:
repository: tccr.io/truecharts/vikunja-frontend
tag: 0.20.3@sha256:f8b46f3e31991656d2a774f48118a2affa9a9df8454ab41bac8f318d17cde6c9
pullPolicy: IfNotPresent
-
nginxImage:
repository: tccr.io/truecharts/nginx
- tag: 1.23.4@sha256:7e6b4bc511d01b48171cb3c345a67802297c77143c1411e22c5cf7e8acbf1915
+ tag: 1.23.3@sha256:0d92357c536291f04dad45f9af95dbdad46fb7a6e940f981a3a332f9d5279665
-securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
-
-configmap:
- nginx-config:
- enabled: true
- data:
- nginx-config: |
- server {
- listen {{ .Values.service.main.ports.main.port }};
- location / {
- proxy_pass http://localhost:80;
- }
- location ~* ^/(api|dav|\.well-known)/ {
- proxy_pass http://localhost:3456;
- client_max_body_size {{ .Values.vikunja.files.maxsize | upper | trimSuffix "B" }};
- }
- }
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ probes:
+ liveness:
+ type: http
+ port: 3456
+ path: /health
+ readiness:
+ type: http
+ port: 3456
+ path: /health
+ startup:
+ type: http
+ port: 3456
+ path: /health
+ frontend:
+ enabled: true
+ imageSelector: frontendImage
+ probes:
+ liveness:
+ type: http
+ port: 80
+ readiness:
+ type: http
+ port: 80
+ startup:
+ type: http
+ port: 80
+ proxy:
+ enabled: true
+ imageSelector: nginxImage
+ probes:
+ liveness:
+ type: http
+ port: "{{ .Values.service.main.ports.main.port }}"
+ readiness:
+ type: http
+ port: "{{ .Values.service.main.ports.main.port }}"
+ startup:
+ type: http
+ port: "{{ .Values.service.main.ports.main.port }}"
vikunja:
service:
@@ -118,13 +137,12 @@ vikunja:
openid:
enabled: false
redirecturl: ""
- providers:
- []
- # - name: ""
- # authurl: ""
- # logouturl: ""
- # clientid: ""
- # clientsecret: ""
+ providers: []
+ # - name: ""
+ # authurl: ""
+ # logouturl: ""
+ # clientid: ""
+ # clientsecret: ""
migration:
todoist:
enable: false
@@ -147,25 +165,6 @@ service:
main:
port: 10220
-additionalContainers:
- frontend:
- name: frontend
- image: "{{ .Values.frontendImage.repository }}:{{ .Values.frontendImage.tag }}"
- ports:
- - containerPort: 80
- name: http
- proxy:
- name: proxy
- image: "{{ .Values.nginxImage.repository }}:{{ .Values.nginxImage.tag }}"
- ports:
- - containerPort: 8080
- name: main
- volumeMounts:
- - name: vikunja-nginx
- mountPath: /etc/nginx/conf.d/default.conf
- subPath: nginx-config
- readOnly: true
-
persistence:
files:
enabled: true
@@ -173,53 +172,47 @@ persistence:
vikunja-nginx:
enabled: true
noMount: true
- mountPath: /etc/nginx/conf.d/default.conf
- subPath: nginx-config
- type: configMap
- objectName: '{{ template "tc.common.names.fullname" . }}-nginx-config'
+ type: configmap
+ objectName: nginx-config
+ targetSelector:
+ main:
+ proxy:
+ mountPath: /etc/nginx/conf.d/default.conf
+ subPath: nginx-config
vikunja-config:
enabled: true
- mountPath: /etc/vikunja
- subPath: config.yml
type: secret
- objectName: '{{ template "tc.common.names.fullname" . }}-secret'
-
+ objectName: config
+ targetSelector:
+ main:
+ main:
+ subPath: config.yaml
+ mountPath: /etc/vikunja/config.yaml
metrics:
- # -- Enable and configure a Prometheus serviceMonitor for the chart under this key.
- # @default -- See values.yaml
- enabled: true
- serviceMonitor:
- interval: 1m
- scrapeTimeout: 30s
- labels: {}
- # -- Enable and configure Prometheus Rules for the chart under this key.
- # @default -- See values.yaml
- prometheusRule:
- enabled: false
- labels: {}
- # -- Configure additionial rules for the chart under this key.
- # @default -- See prometheusrules.yaml
- rules:
- []
- # - alert: UnifiPollerAbsent
- # annotations:
- # description: Unifi Poller has disappeared from Prometheus service discovery.
- # summary: Unifi Poller is down.
- # expr: |
- # absent(up{job=~".*unifi-poller.*"} == 1)
- # for: 5m
- # labels:
- # severity: critical
-
-postgresql:
- enabled: true
- existingSecret: dbcreds
- postgresqlUsername: vikunja
- postgresqlDatabase: vikunja
+ main:
+ enabled: true
+ type: "servicemonitor"
+ prometheusRule:
+ enabled: false
+cnpg:
+ main:
+ enabled: true
+ user: vikunja
+ database: vikunja
redis:
enabled: true
- existingSecret: rediscreds
portal:
- enabled: true
+ open:
+ enabled: true
+
+securityContext:
+ container:
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ runAsUser: 0
+ runAsGroup: 0
+ capabilities:
+ add:
+ - NET_BIND_SERVICE
diff --git a/charts/stable/wg-easy/Chart.yaml b/charts/stable/wg-easy/Chart.yaml
index f0089599d78..4f1d9a9ee22 100644
--- a/charts/stable/wg-easy/Chart.yaml
+++ b/charts/stable/wg-easy/Chart.yaml
@@ -3,7 +3,7 @@ appVersion: "latest"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
- version: 11.1.2
+ version: 12.6.1
deprecated: false
description: The easiest way to run WireGuard VPN + Web-based Admin UI.
home: https://truecharts.org/charts/stable/wg-easy
@@ -22,9 +22,8 @@ sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/wg-easy
- https://github.com/WeeJeWel/wg-easy
type: application
-version: 3.0.8
+version: 4.0.0
annotations:
truecharts.org/catagories: |
- networking
truecharts.org/SCALE-support: "true"
- truecharts.org/grade: U
diff --git a/charts/stable/wg-easy/questions.yaml b/charts/stable/wg-easy/questions.yaml
index 8214e57a6ef..0b204fe6776 100644
--- a/charts/stable/wg-easy/questions.yaml
+++ b/charts/stable/wg-easy/questions.yaml
@@ -10,68 +10,63 @@ questions:
# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
+
+
+ - variable: env
+ group: "App Configuration"
+ label: "Image Environment"
+ schema:
+ additional_attrs: true
+ type: dict
+ attrs:
+ - variable: WG_HOST
+ label: "WG_HOST"
+ description: "The public hostname of your VPN server."
+ schema:
+ type: string
+ required: true
+ default: ""
+ - variable: WG_MTU
+ label: "WG_MTU"
+ description: "The MTU the clients will use. Server uses default WG MTU."
+ schema:
+ type: int
+ default: 1420
+ - variable: WG_PERSISTENT_KEEPALIVE
+ label: "WG_PERSISTENT_KEEPALIVE"
+ description: "Value in seconds to keep the connection open."
+ schema:
+ type: int
+ default: 0
+ - variable: WG_DEFAULT_ADDRESS
+ label: "WG_DEFAULT_ADDRESS"
+ description: "Clients IP address range."
+ schema:
+ type: string
+ default: "10.8.0.x"
+ - variable: WG_DEFAULT_DNS
+ label: "WG_DEFAULT_DNS"
+ description: "Clients default DNS IP"
+ schema:
+ type: string
+ default: "1.1.1.1"
+ - variable: WG_ALLOWED_IPS
+ label: "WG_ALLOWED_IPS"
+ description: "Allowed IPs clients will use."
+ schema:
+ type: string
+ default: "0.0.0.0/0, ::/0"
+ - variable: PASSWORD
+ label: "ADMIN_PASSWORD"
+ schema:
+ type: string
+ private: true
+ required: true
+ default: ""
# Include{containerBasic}
# Include{containerAdvanced}
-
- - variable: env
- group: "App Configuration"
- label: "Image Environment"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: WG_HOST
- label: "WG_HOST"
- description: "The public hostname of your VPN server."
- schema:
- type: string
- required: true
- default: ""
- - variable: WG_MTU
- label: "WG_MTU"
- description: "The MTU the clients will use. Server uses default WG MTU."
- schema:
- type: int
- default: 1420
- - variable: WG_PERSISTENT_KEEPALIVE
- label: "WG_PERSISTENT_KEEPALIVE"
- description: "Value in seconds to keep the connection open."
- schema:
- type: int
- default: 0
- - variable: WG_DEFAULT_ADDRESS
- label: "WG_DEFAULT_ADDRESS"
- description: "Clients IP address range."
- schema:
- type: string
- default: "10.8.0.x"
- - variable: WG_DEFAULT_DNS
- label: "WG_DEFAULT_DNS"
- description: "Clients default DNS IP"
- schema:
- type: string
- default: "1.1.1.1"
- - variable: WG_ALLOWED_IPS
- label: "WG_ALLOWED_IPS"
- description: "Allowed IPs clients will use."
- schema:
- type: string
- default: "0.0.0.0/0, ::/0"
- - variable: secretEnv
- group: "App Configuration"
- label: "Image Secrets"
- schema:
- additional_attrs: true
- type: dict
- attrs:
- - variable: PASSWORD
- label: "ADMIN_PASSWORD"
- schema:
- type: string
- private: true
- required: true
- default: ""
# Include{containerConfig}
+# Include{podOptions}
# Include{serviceRoot}
- variable: main
label: "Main Service"
@@ -151,12 +146,12 @@ questions:
schema:
type: int
default: 0
- - variable: runAsGroup
- label: "runAsGroup"
- description: "The groupID this App of the user running the application"
- schema:
- type: int
- default: 0
+ - variable: runAsGroup
+ label: "runAsGroup"
+ description: "The groupID of the user running the application"
+ schema:
+ type: int
+ default: 0
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
diff --git a/charts/stable/wg-easy/templates/NOTES.txt b/charts/stable/wg-easy/templates/NOTES.txt
new file mode 100644
index 00000000000..efcb74cb772
--- /dev/null
+++ b/charts/stable/wg-easy/templates/NOTES.txt
@@ -0,0 +1 @@
+{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/charts/stable/wg-easy/templates/common.yaml b/charts/stable/wg-easy/templates/common.yaml
index c1a366e1cf0..b51394e00a4 100644
--- a/charts/stable/wg-easy/templates/common.yaml
+++ b/charts/stable/wg-easy/templates/common.yaml
@@ -1 +1 @@
-{{ include "tc.common.loader.all" . }}
+{{ include "tc.v1.common.loader.all" . }}
diff --git a/charts/stable/wg-easy/values.yaml b/charts/stable/wg-easy/values.yaml
index 6ecb9db6072..a04baeb6b05 100644
--- a/charts/stable/wg-easy/values.yaml
+++ b/charts/stable/wg-easy/values.yaml
@@ -2,33 +2,6 @@ image:
repository: tccr.io/truecharts/wg-easy
pullPolicy: IfNotPresent
tag: latest@sha256:5cc96ad86c87fb2ebc7dab65fc5b190ff0dcce370d0b9afa4aa4b5b2580a5000
-
-securityContext:
- readOnlyRootFilesystem: false
- runAsNonRoot: false
- capabilities:
- add:
- - NET_ADMIN
- - SYS_MODULE
-
-security:
- PUID: 0
-
-podSecurityContext:
- runAsUser: 0
- runAsGroup: 0
-
-secretEnv:
- PASSWORD: "secretpass"
-
-env:
- WG_HOST: "localhost"
- WG_MTU: 1420
- WG_PERSISTENT_KEEPALIVE: 0
- WG_DEFAULT_ADDRESS: "10.8.0.x"
- WG_DEFAULT_DNS: "1.1.1.1"
- WG_ALLOWED_IPS: "0.0.0.0/0, ::/0"
-
service:
main:
ports:
@@ -40,14 +13,45 @@ service:
ports:
vpn:
enabled: true
- protocol: UDP
+ protocol: udp
port: 51820
targetPort: 51820
-
persistence:
config:
enabled: true
mountPath: "/etc/wireguard"
-
portal:
- enabled: true
+ open:
+ enabled: true
+securityContext:
+ container:
+ PUID: 0
+ runAsUser: 0
+ runAsGroup: 0
+ readOnlyRootFilesystem: false
+ runAsNonRoot: false
+ capabilities:
+ add:
+ - NET_ADMIN
+ - NET_RAW
+ - SYS_MODULE
+workload:
+ main:
+ podSpec:
+ containers:
+ main:
+ probes:
+ liveness:
+ type: tcp
+ readiness:
+ type: tcp
+ startup:
+ type: tcp
+ env:
+ WG_HOST: "localhost"
+ WG_MTU: 1420
+ WG_PERSISTENT_KEEPALIVE: 0
+ WG_DEFAULT_ADDRESS: "10.8.0.x"
+ WG_DEFAULT_DNS: "1.1.1.1"
+ WG_ALLOWED_IPS: "0.0.0.0/0, ::/0"
+ PASSWORD: "secretpass"