From be120626720273d8871316c404a2e6bf02bdb879 Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Mon, 25 Jul 2022 14:52:03 +0000 Subject: [PATCH] Commit new Chart releases for TrueCharts Signed-off-by: TrueCharts-Bot --- .../babybuddy/{8.0.30 => 8.0.31}/CHANGELOG.md | 18 +- .../babybuddy/{8.0.30 => 8.0.31}/Chart.lock | 2 +- .../babybuddy/{8.0.30 => 8.0.31}/Chart.yaml | 2 +- stable/babybuddy/{8.0.30 => 8.0.31}/README.md | 2 +- .../{8.0.30 => 8.0.31}/app-readme.md | 0 .../charts/common-10.4.7.tgz | Bin .../charts/postgresql-8.0.45.tgz | Bin .../{8.0.30 => 8.0.31}/ix_values.yaml | 2 +- .../{8.0.30 => 8.0.31}/questions.yaml | 0 .../{8.0.30 => 8.0.31}/templates/common.yaml | 0 .../babybuddy/{8.0.30 => 8.0.31}/values.yaml | 0 .../{6.0.25 => 6.0.26}/CHANGELOG.md | 18 +- .../{6.0.25 => 6.0.26}/Chart.lock | 2 +- .../{6.0.25 => 6.0.26}/Chart.yaml | 2 +- .../{6.0.25 => 6.0.26}/README.md | 2 +- .../{6.0.25 => 6.0.26}/app-readme.md | 0 .../charts/common-10.4.7.tgz | Bin .../{6.0.25 => 6.0.26}/ix_values.yaml | 2 +- .../{6.0.25 => 6.0.26}/questions.yaml | 0 .../{6.0.25 => 6.0.26}/templates/common.yaml | 0 .../{6.0.25 => 6.0.26}/values.yaml | 0 .../calibre/{7.0.27 => 7.0.28}/CHANGELOG.md | 18 +- .../3.0.36 => calibre/7.0.28}/Chart.lock | 2 +- stable/calibre/{7.0.27 => 7.0.28}/Chart.yaml | 2 +- stable/calibre/{7.0.27 => 7.0.28}/README.md | 2 +- .../calibre/{7.0.27 => 7.0.28}/app-readme.md | 0 .../charts/common-10.4.7.tgz | Bin .../calibre/{7.0.27 => 7.0.28}/ix_values.yaml | 2 +- .../calibre/{7.0.27 => 7.0.28}/questions.yaml | 0 .../{7.0.27 => 7.0.28}/templates/common.yaml | 0 stable/calibre/{7.0.27 => 7.0.28}/values.yaml | 0 .../cyberchef/{2.0.45 => 2.0.46}/CHANGELOG.md | 18 +- .../7.0.27 => cyberchef/2.0.46}/Chart.lock | 2 +- .../cyberchef/{2.0.45 => 2.0.46}/Chart.yaml | 2 +- stable/cyberchef/{2.0.45 => 2.0.46}/README.md | 2 +- .../{2.0.45 => 2.0.46}/app-readme.md | 0 .../charts/common-10.4.7.tgz | Bin .../{2.0.45 => 2.0.46}/ix_values.yaml | 2 +- .../{2.0.45 => 2.0.46}/questions.yaml | 0 .../{2.0.45 => 2.0.46}/templates/common.yaml | 0 .../cyberchef/{2.0.45 => 2.0.46}/values.yaml | 0 .../dokuwiki/{3.0.36 => 3.0.37}/CHANGELOG.md | 18 +- .../2.0.45 => dokuwiki/3.0.37}/Chart.lock | 2 +- stable/dokuwiki/{3.0.36 => 3.0.37}/Chart.yaml | 2 +- stable/dokuwiki/{3.0.36 => 3.0.37}/README.md | 2 +- .../dokuwiki/{3.0.36 => 3.0.37}/app-readme.md | 0 .../charts/common-10.4.7.tgz | Bin .../{3.0.36 => 3.0.37}/ix_values.yaml | 2 +- .../{3.0.36 => 3.0.37}/questions.yaml | 0 .../{3.0.36 => 3.0.37}/templates/common.yaml | 0 .../dokuwiki/{3.0.36 => 3.0.37}/values.yaml | 0 stable/hammond/2.0.21/Chart.lock | 6 - .../hammond/{2.0.21 => 2.0.22}/CHANGELOG.md | 18 +- stable/hammond/2.0.22/Chart.lock | 6 + stable/hammond/{2.0.21 => 2.0.22}/Chart.yaml | 2 +- stable/hammond/{2.0.21 => 2.0.22}/README.md | 2 +- .../hammond/{2.0.21 => 2.0.22}/app-readme.md | 0 .../charts/common-10.4.7.tgz | Bin .../hammond/{2.0.21 => 2.0.22}/ix_values.yaml | 2 +- .../hammond/{2.0.21 => 2.0.22}/questions.yaml | 0 .../{2.0.21 => 2.0.22}/templates/_secrets.tpl | 0 .../{2.0.21 => 2.0.22}/templates/common.yaml | 0 stable/hammond/{2.0.21 => 2.0.22}/values.yaml | 0 stable/heimdall/11.0.25/CHANGELOG.md | 99 + stable/heimdall/11.0.25/Chart.lock | 6 + stable/heimdall/11.0.25/Chart.yaml | 27 + stable/heimdall/11.0.25/README.md | 107 + stable/heimdall/11.0.25/app-readme.md | 8 + .../11.0.25}/charts/common-10.4.7.tgz | Bin stable/heimdall/11.0.25/ix_values.yaml | 28 + stable/heimdall/11.0.25/questions.yaml | 2430 +++++++++++++++ .../11.0.25}/templates/common.yaml | 0 .../1.0.25 => heimdall/11.0.25}/values.yaml | 0 stable/impostor-server/1.0.25/Chart.lock | 6 - .../{1.0.25 => 1.0.26}/CHANGELOG.md | 18 +- stable/impostor-server/1.0.26/Chart.lock | 6 + .../{1.0.25 => 1.0.26}/Chart.yaml | 2 +- .../{1.0.25 => 1.0.26}/README.md | 2 +- .../{1.0.25 => 1.0.26}/app-readme.md | 0 .../1.0.26}/charts/common-10.4.7.tgz | Bin .../{1.0.25 => 1.0.26}/ci/base-values.yaml | 0 .../{1.0.25 => 1.0.26}/ci/values.yaml | 2 +- .../{1.0.25 => 1.0.26}/ix_values.yaml | 2 +- .../{1.0.25 => 1.0.26}/questions.yaml | 0 .../1.0.26}/templates/common.yaml | 0 .../1.0.26}/values.yaml | 0 stable/lazylibrarian/11.0.30/CHANGELOG.md | 99 + stable/lazylibrarian/11.0.30/Chart.lock | 6 + stable/lazylibrarian/11.0.30/Chart.yaml | 29 + stable/lazylibrarian/11.0.30/README.md | 108 + stable/lazylibrarian/11.0.30/app-readme.md | 8 + .../11.0.30}/charts/common-10.4.7.tgz | Bin stable/lazylibrarian/11.0.30/ix_values.yaml | 26 + stable/lazylibrarian/11.0.30/questions.yaml | 2431 +++++++++++++++ .../11.0.30}/templates/common.yaml | 0 .../11.0.30}/values.yaml | 0 stable/littlelink/6.0.38/Chart.lock | 6 - .../{6.0.38 => 6.0.39}/CHANGELOG.md | 18 +- stable/littlelink/6.0.39/Chart.lock | 6 + .../littlelink/{6.0.38 => 6.0.39}/Chart.yaml | 2 +- .../littlelink/{6.0.38 => 6.0.39}/README.md | 2 +- .../{6.0.38 => 6.0.39}/app-readme.md | 0 .../6.0.39}/charts/common-10.4.7.tgz | Bin .../{6.0.38 => 6.0.39}/ix_values.yaml | 2 +- .../{6.0.38 => 6.0.39}/questions.yaml | 0 .../templates/_configmap.tpl | 0 .../{6.0.38 => 6.0.39}/templates/common.yaml | 0 .../3.0.26 => littlelink/6.0.39}/values.yaml | 0 stable/matomo/{3.0.35 => 3.0.36}/CHANGELOG.md | 18 +- stable/matomo/{3.0.35 => 3.0.36}/Chart.lock | 2 +- stable/matomo/{3.0.35 => 3.0.36}/Chart.yaml | 2 +- stable/matomo/{3.0.35 => 3.0.36}/README.md | 2 +- .../matomo/{3.0.35 => 3.0.36}/app-readme.md | 0 .../3.0.36}/charts/common-10.4.7.tgz | Bin .../charts/mariadb-3.0.43.tgz | Bin .../matomo/{3.0.35 => 3.0.36}/ix_values.yaml | 2 +- .../matomo/{3.0.35 => 3.0.36}/questions.yaml | 0 .../3.0.36}/templates/common.yaml | 0 .../1.0.31 => matomo/3.0.36}/values.yaml | 0 stable/medusa/3.0.26/Chart.lock | 6 - stable/medusa/{3.0.26 => 3.0.27}/CHANGELOG.md | 18 +- stable/medusa/3.0.27/Chart.lock | 6 + stable/medusa/{3.0.26 => 3.0.27}/Chart.yaml | 2 +- stable/medusa/{3.0.26 => 3.0.27}/README.md | 2 +- .../medusa/{3.0.26 => 3.0.27}/app-readme.md | 0 .../3.0.27}/charts/common-10.4.7.tgz | Bin .../medusa/{3.0.26 => 3.0.27}/ix_values.yaml | 2 +- .../medusa/{3.0.26 => 3.0.27}/questions.yaml | 0 .../{3.0.26 => 3.0.27}/templates/common.yaml | 0 .../6.0.38 => medusa/3.0.27}/values.yaml | 0 stable/minecraft-java/1.0.31/Chart.lock | 6 - .../{1.0.31 => 1.0.32}/CHANGELOG.md | 18 +- stable/minecraft-java/1.0.32/Chart.lock | 6 + .../{1.0.31 => 1.0.32}/Chart.yaml | 2 +- .../{1.0.31 => 1.0.32}/README.md | 2 +- .../{1.0.31 => 1.0.32}/app-readme.md | 0 .../1.0.32}/charts/common-10.4.7.tgz | Bin .../{1.0.31 => 1.0.32}/ci/base-values.yaml | 0 .../{1.0.31 => 1.0.32}/ci/j11-values.yaml | 2 +- .../{1.0.31 => 1.0.32}/ci/j11j9-values.yaml | 0 .../{1.0.31 => 1.0.32}/ci/j8-values.yaml | 2 +- .../{1.0.31 => 1.0.32}/ci/j8j9-values.yaml | 0 .../{1.0.31 => 1.0.32}/ix_values.yaml | 6 +- .../{1.0.31 => 1.0.32}/questions.yaml | 0 .../1.0.32}/templates/common.yaml | 0 .../1.0.32}/values.yaml | 0 stable/nextcloud/15.2.27/CHANGELOG.md | 99 + stable/nextcloud/15.2.27/Chart.lock | 15 + stable/nextcloud/15.2.27/Chart.yaml | 46 + stable/nextcloud/15.2.27/README.md | 111 + stable/nextcloud/15.2.27/app-readme.md | 8 + .../charts/collabora-online-12.1.21.tgz | Bin 0 -> 57558 bytes .../15.2.27}/charts/common-10.4.7.tgz | Bin .../15.2.27/charts/postgresql-8.0.45.tgz | Bin 0 -> 60672 bytes .../15.2.27}/charts/redis-3.0.44.tgz | Bin stable/nextcloud/15.2.27/ci/basic-values.yaml | 11 + stable/nextcloud/15.2.27/ix_values.yaml | 423 +++ stable/nextcloud/15.2.27/questions.yaml | 2665 +++++++++++++++++ .../15.2.27/templates/_configmap.tpl | 36 + .../nextcloud/15.2.27/templates/_cronjob.tpl | 64 + stable/nextcloud/15.2.27/templates/_hpb.tpl | 133 + .../15.2.27/templates/_imaginary.tpl | 40 + stable/nextcloud/15.2.27/templates/_nginx.tpl | 54 + .../nextcloud/15.2.27/templates/common.yaml | 22 + .../3.0.49 => nextcloud/15.2.27}/values.yaml | 0 stable/omada-controller/6.0.38/Chart.lock | 6 - .../{6.0.38 => 6.0.39}/CHANGELOG.md | 18 +- stable/omada-controller/6.0.39/Chart.lock | 6 + .../{6.0.38 => 6.0.39}/Chart.yaml | 2 +- .../{6.0.38 => 6.0.39}/README.md | 2 +- .../{6.0.38 => 6.0.39}/app-readme.md | 0 .../6.0.39}/charts/common-10.4.7.tgz | Bin .../{6.0.38 => 6.0.39}/ix_values.yaml | 2 +- .../{6.0.38 => 6.0.39}/questions.yaml | 0 .../6.0.39/templates/common.yaml | 1 + .../6.0.39}/values.yaml | 0 .../{4.0.46 => 4.0.47}/CHANGELOG.md | 18 +- .../prometheus/{4.0.46 => 4.0.47}/Chart.lock | 2 +- .../prometheus/{4.0.46 => 4.0.47}/Chart.yaml | 2 +- .../prometheus/{4.0.46 => 4.0.47}/README.md | 2 +- .../{4.0.46 => 4.0.47}/app-readme.md | 0 .../4.0.47/charts/common-10.4.7.tgz | Bin 0 -> 47356 bytes .../charts/kube-state-metrics-3.1.1.tgz | Bin .../charts/node-exporter-3.0.4.tgz | Bin .../crds/crd-alertmanager-config.yaml | 0 .../crds/crd-alertmanager.yaml | 0 .../crds/crd-podmonitor.yaml | 0 .../{4.0.46 => 4.0.47}/crds/crd-probes.yaml | 0 .../crds/crd-prometheus.yaml | 0 .../crds/crd-prometheusrules.yaml | 0 .../crds/crd-servicemonitor.yaml | 0 .../crds/crd-thanosrulers.yaml | 0 .../{4.0.46 => 4.0.47}/ix_values.yaml | 2 +- .../{4.0.46 => 4.0.47}/questions.yaml | 0 .../{4.0.46 => 4.0.47}/templates/_helpers.tpl | 0 .../templates/alertmanager/_alertmanager.tpl | 0 .../templates/alertmanager/secrets.yaml | 0 .../alertmanager/serviceaccount.yaml | 0 .../alertmanager/servicemonitor.yaml | 0 .../{4.0.46 => 4.0.47}/templates/common.yaml | 0 .../templates/exporters/core-dns/service.yaml | 0 .../exporters/core-dns/servicemonitor.yaml | 0 .../kube-apiserver/servicemonitor.yaml | 0 .../kube-controller-manager/endpoints.yaml | 0 .../kube-controller-manager/service.yaml | 0 .../servicemonitor.yaml | 0 .../exporters/kube-scheduler/endpoints.yaml | 0 .../exporters/kube-scheduler/service.yaml | 0 .../kube-scheduler/servicemonitor.yaml | 0 .../exporters/kubelet/servicemonitor.yaml | 0 .../templates/operator/_args.tpl | 0 .../templates/operator/configmap.yaml | 0 .../templates/operator/servicemonitor.yaml | 0 .../prometheus/_additionalPrometheusRules.tpl | 0 .../prometheus/_additionalScrapeJobs.tpl | 0 .../templates/prometheus/_prometheus.tpl | 0 .../templates/prometheus/_servicemonitor.tpl | 0 .../templates/prometheus/clusterrole.yaml | 0 .../prometheus/clusterrolebinding.yaml | 0 .../templates/prometheus/serviceaccount.yaml | 0 stable/prometheus/4.0.47/values.yaml | 0 stable/rsshub/{3.0.49 => 3.0.50}/CHANGELOG.md | 18 +- stable/rsshub/{3.0.49 => 3.0.50}/Chart.lock | 2 +- stable/rsshub/{3.0.49 => 3.0.50}/Chart.yaml | 2 +- stable/rsshub/{3.0.49 => 3.0.50}/README.md | 2 +- .../rsshub/{3.0.49 => 3.0.50}/app-readme.md | 0 stable/rsshub/3.0.50/charts/common-10.4.7.tgz | Bin 0 -> 47356 bytes stable/rsshub/3.0.50/charts/redis-3.0.44.tgz | Bin 0 -> 56305 bytes .../rsshub/{3.0.49 => 3.0.50}/ix_values.yaml | 2 +- .../rsshub/{3.0.49 => 3.0.50}/questions.yaml | 0 stable/rsshub/3.0.50/templates/common.yaml | 1 + stable/rsshub/3.0.50/values.yaml | 0 stable/sickchill/3.0.24/Chart.lock | 6 - .../sickchill/{3.0.24 => 3.0.25}/CHANGELOG.md | 18 +- stable/sickchill/3.0.25/Chart.lock | 6 + .../sickchill/{3.0.24 => 3.0.25}/Chart.yaml | 2 +- stable/sickchill/{3.0.24 => 3.0.25}/README.md | 2 +- .../{3.0.24 => 3.0.25}/app-readme.md | 0 .../sickchill/3.0.25/charts/common-10.4.7.tgz | Bin 0 -> 47356 bytes .../{3.0.24 => 3.0.25}/ix_values.yaml | 2 +- .../{3.0.24 => 3.0.25}/questions.yaml | 0 .../{3.0.24 => 3.0.25}/templates/common.yaml | 0 stable/sickchill/3.0.25/values.yaml | 0 243 files changed, 9376 insertions(+), 235 deletions(-) rename stable/babybuddy/{8.0.30 => 8.0.31}/CHANGELOG.md (92%) rename stable/babybuddy/{8.0.30 => 8.0.31}/Chart.lock (85%) rename stable/babybuddy/{8.0.30 => 8.0.31}/Chart.yaml (98%) rename stable/babybuddy/{8.0.30 => 8.0.31}/README.md (98%) rename stable/babybuddy/{8.0.30 => 8.0.31}/app-readme.md (100%) rename stable/babybuddy/{8.0.30 => 8.0.31}/charts/common-10.4.7.tgz (100%) rename stable/babybuddy/{8.0.30 => 8.0.31}/charts/postgresql-8.0.45.tgz (100%) rename stable/babybuddy/{8.0.30 => 8.0.31}/ix_values.yaml (90%) rename stable/babybuddy/{8.0.30 => 8.0.31}/questions.yaml (100%) rename stable/babybuddy/{8.0.30 => 8.0.31}/templates/common.yaml (100%) rename stable/babybuddy/{8.0.30 => 8.0.31}/values.yaml (100%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/CHANGELOG.md (89%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/Chart.lock (80%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/Chart.yaml (98%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/README.md (98%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/app-readme.md (100%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/charts/common-10.4.7.tgz (100%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/ix_values.yaml (80%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/questions.yaml (100%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/templates/common.yaml (100%) rename stable/booksonic-air/{6.0.25 => 6.0.26}/values.yaml (100%) rename stable/calibre/{7.0.27 => 7.0.28}/CHANGELOG.md (90%) rename stable/{dokuwiki/3.0.36 => calibre/7.0.28}/Chart.lock (80%) rename stable/calibre/{7.0.27 => 7.0.28}/Chart.yaml (97%) rename stable/calibre/{7.0.27 => 7.0.28}/README.md (98%) rename stable/calibre/{7.0.27 => 7.0.28}/app-readme.md (100%) rename stable/calibre/{7.0.27 => 7.0.28}/charts/common-10.4.7.tgz (100%) rename stable/calibre/{7.0.27 => 7.0.28}/ix_values.yaml (86%) rename stable/calibre/{7.0.27 => 7.0.28}/questions.yaml (100%) rename stable/calibre/{7.0.27 => 7.0.28}/templates/common.yaml (100%) rename stable/calibre/{7.0.27 => 7.0.28}/values.yaml (100%) rename stable/cyberchef/{2.0.45 => 2.0.46}/CHANGELOG.md (92%) rename stable/{calibre/7.0.27 => cyberchef/2.0.46}/Chart.lock (80%) rename stable/cyberchef/{2.0.45 => 2.0.46}/Chart.yaml (97%) rename stable/cyberchef/{2.0.45 => 2.0.46}/README.md (98%) rename stable/cyberchef/{2.0.45 => 2.0.46}/app-readme.md (100%) rename stable/cyberchef/{2.0.45 => 2.0.46}/charts/common-10.4.7.tgz (100%) rename stable/cyberchef/{2.0.45 => 2.0.46}/ix_values.yaml (76%) rename stable/cyberchef/{2.0.45 => 2.0.46}/questions.yaml (100%) rename stable/cyberchef/{2.0.45 => 2.0.46}/templates/common.yaml (100%) rename stable/cyberchef/{2.0.45 => 2.0.46}/values.yaml (100%) rename stable/dokuwiki/{3.0.36 => 3.0.37}/CHANGELOG.md (91%) rename stable/{cyberchef/2.0.45 => dokuwiki/3.0.37}/Chart.lock (80%) rename stable/dokuwiki/{3.0.36 => 3.0.37}/Chart.yaml (98%) rename stable/dokuwiki/{3.0.36 => 3.0.37}/README.md (98%) rename stable/dokuwiki/{3.0.36 => 3.0.37}/app-readme.md (100%) rename stable/dokuwiki/{3.0.36 => 3.0.37}/charts/common-10.4.7.tgz (100%) rename stable/dokuwiki/{3.0.36 => 3.0.37}/ix_values.yaml (85%) rename stable/dokuwiki/{3.0.36 => 3.0.37}/questions.yaml (100%) rename stable/dokuwiki/{3.0.36 => 3.0.37}/templates/common.yaml (100%) rename stable/dokuwiki/{3.0.36 => 3.0.37}/values.yaml (100%) delete mode 100644 stable/hammond/2.0.21/Chart.lock rename stable/hammond/{2.0.21 => 2.0.22}/CHANGELOG.md (90%) create mode 100644 stable/hammond/2.0.22/Chart.lock rename stable/hammond/{2.0.21 => 2.0.22}/Chart.yaml (97%) rename stable/hammond/{2.0.21 => 2.0.22}/README.md (98%) rename stable/hammond/{2.0.21 => 2.0.22}/app-readme.md (100%) rename stable/hammond/{2.0.21 => 2.0.22}/charts/common-10.4.7.tgz (100%) rename stable/hammond/{2.0.21 => 2.0.22}/ix_values.yaml (81%) rename stable/hammond/{2.0.21 => 2.0.22}/questions.yaml (100%) rename stable/hammond/{2.0.21 => 2.0.22}/templates/_secrets.tpl (100%) rename stable/hammond/{2.0.21 => 2.0.22}/templates/common.yaml (100%) rename stable/hammond/{2.0.21 => 2.0.22}/values.yaml (100%) create mode 100644 stable/heimdall/11.0.25/CHANGELOG.md create mode 100644 stable/heimdall/11.0.25/Chart.lock create mode 100644 stable/heimdall/11.0.25/Chart.yaml create mode 100644 stable/heimdall/11.0.25/README.md create mode 100644 stable/heimdall/11.0.25/app-readme.md rename stable/{impostor-server/1.0.25 => heimdall/11.0.25}/charts/common-10.4.7.tgz (100%) create mode 100644 stable/heimdall/11.0.25/ix_values.yaml create mode 100644 stable/heimdall/11.0.25/questions.yaml rename stable/{impostor-server/1.0.25 => heimdall/11.0.25}/templates/common.yaml (100%) rename stable/{impostor-server/1.0.25 => heimdall/11.0.25}/values.yaml (100%) delete mode 100644 stable/impostor-server/1.0.25/Chart.lock rename stable/impostor-server/{1.0.25 => 1.0.26}/CHANGELOG.md (90%) create mode 100644 stable/impostor-server/1.0.26/Chart.lock rename stable/impostor-server/{1.0.25 => 1.0.26}/Chart.yaml (97%) rename stable/impostor-server/{1.0.25 => 1.0.26}/README.md (98%) rename stable/impostor-server/{1.0.25 => 1.0.26}/app-readme.md (100%) rename stable/{littlelink/6.0.38 => impostor-server/1.0.26}/charts/common-10.4.7.tgz (100%) rename stable/impostor-server/{1.0.25 => 1.0.26}/ci/base-values.yaml (100%) rename stable/impostor-server/{1.0.25 => 1.0.26}/ci/values.yaml (50%) rename stable/impostor-server/{1.0.25 => 1.0.26}/ix_values.yaml (89%) rename stable/impostor-server/{1.0.25 => 1.0.26}/questions.yaml (100%) rename stable/{matomo/3.0.35 => impostor-server/1.0.26}/templates/common.yaml (100%) rename stable/{littlelink/6.0.38 => impostor-server/1.0.26}/values.yaml (100%) create mode 100644 stable/lazylibrarian/11.0.30/CHANGELOG.md create mode 100644 stable/lazylibrarian/11.0.30/Chart.lock create mode 100644 stable/lazylibrarian/11.0.30/Chart.yaml create mode 100644 stable/lazylibrarian/11.0.30/README.md create mode 100644 stable/lazylibrarian/11.0.30/app-readme.md rename stable/{matomo/3.0.35 => lazylibrarian/11.0.30}/charts/common-10.4.7.tgz (100%) create mode 100644 stable/lazylibrarian/11.0.30/ix_values.yaml create mode 100644 stable/lazylibrarian/11.0.30/questions.yaml rename stable/{minecraft-java/1.0.31 => lazylibrarian/11.0.30}/templates/common.yaml (100%) rename stable/{matomo/3.0.35 => lazylibrarian/11.0.30}/values.yaml (100%) delete mode 100644 stable/littlelink/6.0.38/Chart.lock rename stable/littlelink/{6.0.38 => 6.0.39}/CHANGELOG.md (92%) create mode 100644 stable/littlelink/6.0.39/Chart.lock rename stable/littlelink/{6.0.38 => 6.0.39}/Chart.yaml (97%) rename stable/littlelink/{6.0.38 => 6.0.39}/README.md (98%) rename stable/littlelink/{6.0.38 => 6.0.39}/app-readme.md (100%) rename stable/{medusa/3.0.26 => littlelink/6.0.39}/charts/common-10.4.7.tgz (100%) rename stable/littlelink/{6.0.38 => 6.0.39}/ix_values.yaml (93%) rename stable/littlelink/{6.0.38 => 6.0.39}/questions.yaml (100%) rename stable/littlelink/{6.0.38 => 6.0.39}/templates/_configmap.tpl (100%) rename stable/littlelink/{6.0.38 => 6.0.39}/templates/common.yaml (100%) rename stable/{medusa/3.0.26 => littlelink/6.0.39}/values.yaml (100%) rename stable/matomo/{3.0.35 => 3.0.36}/CHANGELOG.md (91%) rename stable/matomo/{3.0.35 => 3.0.36}/Chart.lock (85%) rename stable/matomo/{3.0.35 => 3.0.36}/Chart.yaml (98%) rename stable/matomo/{3.0.35 => 3.0.36}/README.md (98%) rename stable/matomo/{3.0.35 => 3.0.36}/app-readme.md (100%) rename stable/{minecraft-java/1.0.31 => matomo/3.0.36}/charts/common-10.4.7.tgz (100%) rename stable/matomo/{3.0.35 => 3.0.36}/charts/mariadb-3.0.43.tgz (100%) rename stable/matomo/{3.0.35 => 3.0.36}/ix_values.yaml (96%) rename stable/matomo/{3.0.35 => 3.0.36}/questions.yaml (100%) rename stable/{omada-controller/6.0.38 => matomo/3.0.36}/templates/common.yaml (100%) rename stable/{minecraft-java/1.0.31 => matomo/3.0.36}/values.yaml (100%) delete mode 100644 stable/medusa/3.0.26/Chart.lock rename stable/medusa/{3.0.26 => 3.0.27}/CHANGELOG.md (90%) create mode 100644 stable/medusa/3.0.27/Chart.lock rename stable/medusa/{3.0.26 => 3.0.27}/Chart.yaml (97%) rename stable/medusa/{3.0.26 => 3.0.27}/README.md (98%) rename stable/medusa/{3.0.26 => 3.0.27}/app-readme.md (100%) rename stable/{omada-controller/6.0.38 => medusa/3.0.27}/charts/common-10.4.7.tgz (100%) rename stable/medusa/{3.0.26 => 3.0.27}/ix_values.yaml (81%) rename stable/medusa/{3.0.26 => 3.0.27}/questions.yaml (100%) rename stable/medusa/{3.0.26 => 3.0.27}/templates/common.yaml (100%) rename stable/{omada-controller/6.0.38 => medusa/3.0.27}/values.yaml (100%) delete mode 100644 stable/minecraft-java/1.0.31/Chart.lock rename stable/minecraft-java/{1.0.31 => 1.0.32}/CHANGELOG.md (91%) create mode 100644 stable/minecraft-java/1.0.32/Chart.lock rename stable/minecraft-java/{1.0.31 => 1.0.32}/Chart.yaml (97%) rename stable/minecraft-java/{1.0.31 => 1.0.32}/README.md (98%) rename stable/minecraft-java/{1.0.31 => 1.0.32}/app-readme.md (100%) rename stable/{prometheus/4.0.46 => minecraft-java/1.0.32}/charts/common-10.4.7.tgz (100%) rename stable/minecraft-java/{1.0.31 => 1.0.32}/ci/base-values.yaml (100%) rename stable/minecraft-java/{1.0.31 => 1.0.32}/ci/j11-values.yaml (54%) rename stable/minecraft-java/{1.0.31 => 1.0.32}/ci/j11j9-values.yaml (100%) rename stable/minecraft-java/{1.0.31 => 1.0.32}/ci/j8-values.yaml (56%) rename stable/minecraft-java/{1.0.31 => 1.0.32}/ci/j8j9-values.yaml (100%) rename stable/minecraft-java/{1.0.31 => 1.0.32}/ix_values.yaml (90%) rename stable/minecraft-java/{1.0.31 => 1.0.32}/questions.yaml (100%) rename stable/{rsshub/3.0.49 => minecraft-java/1.0.32}/templates/common.yaml (100%) rename stable/{prometheus/4.0.46 => minecraft-java/1.0.32}/values.yaml (100%) create mode 100644 stable/nextcloud/15.2.27/CHANGELOG.md create mode 100644 stable/nextcloud/15.2.27/Chart.lock create mode 100644 stable/nextcloud/15.2.27/Chart.yaml create mode 100644 stable/nextcloud/15.2.27/README.md create mode 100644 stable/nextcloud/15.2.27/app-readme.md create mode 100644 stable/nextcloud/15.2.27/charts/collabora-online-12.1.21.tgz rename stable/{rsshub/3.0.49 => nextcloud/15.2.27}/charts/common-10.4.7.tgz (100%) create mode 100644 stable/nextcloud/15.2.27/charts/postgresql-8.0.45.tgz rename stable/{rsshub/3.0.49 => nextcloud/15.2.27}/charts/redis-3.0.44.tgz (100%) create mode 100644 stable/nextcloud/15.2.27/ci/basic-values.yaml create mode 100644 stable/nextcloud/15.2.27/ix_values.yaml create mode 100644 stable/nextcloud/15.2.27/questions.yaml create mode 100644 stable/nextcloud/15.2.27/templates/_configmap.tpl create mode 100644 stable/nextcloud/15.2.27/templates/_cronjob.tpl create mode 100644 stable/nextcloud/15.2.27/templates/_hpb.tpl create mode 100644 stable/nextcloud/15.2.27/templates/_imaginary.tpl create mode 100644 stable/nextcloud/15.2.27/templates/_nginx.tpl create mode 100644 stable/nextcloud/15.2.27/templates/common.yaml rename stable/{rsshub/3.0.49 => nextcloud/15.2.27}/values.yaml (100%) delete mode 100644 stable/omada-controller/6.0.38/Chart.lock rename stable/omada-controller/{6.0.38 => 6.0.39}/CHANGELOG.md (92%) create mode 100644 stable/omada-controller/6.0.39/Chart.lock rename stable/omada-controller/{6.0.38 => 6.0.39}/Chart.yaml (98%) rename stable/omada-controller/{6.0.38 => 6.0.39}/README.md (98%) rename stable/omada-controller/{6.0.38 => 6.0.39}/app-readme.md (100%) rename stable/{sickchill/3.0.24 => omada-controller/6.0.39}/charts/common-10.4.7.tgz (100%) rename stable/omada-controller/{6.0.38 => 6.0.39}/ix_values.yaml (93%) rename stable/omada-controller/{6.0.38 => 6.0.39}/questions.yaml (100%) create mode 100644 stable/omada-controller/6.0.39/templates/common.yaml rename stable/{sickchill/3.0.24 => omada-controller/6.0.39}/values.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/CHANGELOG.md (92%) rename stable/prometheus/{4.0.46 => 4.0.47}/Chart.lock (89%) rename stable/prometheus/{4.0.46 => 4.0.47}/Chart.yaml (98%) rename stable/prometheus/{4.0.46 => 4.0.47}/README.md (98%) rename stable/prometheus/{4.0.46 => 4.0.47}/app-readme.md (100%) create mode 100644 stable/prometheus/4.0.47/charts/common-10.4.7.tgz rename stable/prometheus/{4.0.46 => 4.0.47}/charts/kube-state-metrics-3.1.1.tgz (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/charts/node-exporter-3.0.4.tgz (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/crds/crd-alertmanager-config.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/crds/crd-alertmanager.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/crds/crd-podmonitor.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/crds/crd-probes.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/crds/crd-prometheus.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/crds/crd-prometheusrules.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/crds/crd-servicemonitor.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/crds/crd-thanosrulers.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/ix_values.yaml (99%) rename stable/prometheus/{4.0.46 => 4.0.47}/questions.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/_helpers.tpl (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/alertmanager/_alertmanager.tpl (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/alertmanager/secrets.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/alertmanager/serviceaccount.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/alertmanager/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/common.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/core-dns/service.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/core-dns/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/kube-apiserver/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/kube-controller-manager/endpoints.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/kube-controller-manager/service.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/kube-controller-manager/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/kube-scheduler/endpoints.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/kube-scheduler/service.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/kube-scheduler/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/exporters/kubelet/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/operator/_args.tpl (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/operator/configmap.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/operator/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/prometheus/_additionalPrometheusRules.tpl (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/prometheus/_additionalScrapeJobs.tpl (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/prometheus/_prometheus.tpl (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/prometheus/_servicemonitor.tpl (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/prometheus/clusterrole.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/prometheus/clusterrolebinding.yaml (100%) rename stable/prometheus/{4.0.46 => 4.0.47}/templates/prometheus/serviceaccount.yaml (100%) create mode 100644 stable/prometheus/4.0.47/values.yaml rename stable/rsshub/{3.0.49 => 3.0.50}/CHANGELOG.md (89%) rename stable/rsshub/{3.0.49 => 3.0.50}/Chart.lock (85%) rename stable/rsshub/{3.0.49 => 3.0.50}/Chart.yaml (98%) rename stable/rsshub/{3.0.49 => 3.0.50}/README.md (98%) rename stable/rsshub/{3.0.49 => 3.0.50}/app-readme.md (100%) create mode 100644 stable/rsshub/3.0.50/charts/common-10.4.7.tgz create mode 100644 stable/rsshub/3.0.50/charts/redis-3.0.44.tgz rename stable/rsshub/{3.0.49 => 3.0.50}/ix_values.yaml (93%) rename stable/rsshub/{3.0.49 => 3.0.50}/questions.yaml (100%) create mode 100644 stable/rsshub/3.0.50/templates/common.yaml create mode 100644 stable/rsshub/3.0.50/values.yaml delete mode 100644 stable/sickchill/3.0.24/Chart.lock rename stable/sickchill/{3.0.24 => 3.0.25}/CHANGELOG.md (90%) create mode 100644 stable/sickchill/3.0.25/Chart.lock rename stable/sickchill/{3.0.24 => 3.0.25}/Chart.yaml (97%) rename stable/sickchill/{3.0.24 => 3.0.25}/README.md (98%) rename stable/sickchill/{3.0.24 => 3.0.25}/app-readme.md (100%) create mode 100644 stable/sickchill/3.0.25/charts/common-10.4.7.tgz rename stable/sickchill/{3.0.24 => 3.0.25}/ix_values.yaml (81%) rename stable/sickchill/{3.0.24 => 3.0.25}/questions.yaml (100%) rename stable/sickchill/{3.0.24 => 3.0.25}/templates/common.yaml (100%) create mode 100644 stable/sickchill/3.0.25/values.yaml diff --git a/stable/babybuddy/8.0.30/CHANGELOG.md b/stable/babybuddy/8.0.31/CHANGELOG.md similarity index 92% rename from stable/babybuddy/8.0.30/CHANGELOG.md rename to stable/babybuddy/8.0.31/CHANGELOG.md index 46e207d457..bf4cbbff18 100644 --- a/stable/babybuddy/8.0.30/CHANGELOG.md +++ b/stable/babybuddy/8.0.31/CHANGELOG.md @@ -2,6 +2,15 @@ +## [babybuddy-8.0.31](https://github.com/truecharts/apps/compare/babybuddy-8.0.30...babybuddy-8.0.31) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [babybuddy-8.0.30](https://github.com/truecharts/apps/compare/babybuddy-8.0.29...babybuddy-8.0.30) (2022-07-23) ### Chore @@ -88,12 +97,3 @@ - update icons ([#3156](https://github.com/truecharts/apps/issues/3156)) - bump to cleanup old docs and use correct icon urls - - - -## [babybuddy-8.0.19](https://github.com/truecharts/apps/compare/babybuddy-8.0.18...babybuddy-8.0.19) (2022-07-12) - -### Chore - -- bump to regenerate documentation - diff --git a/stable/babybuddy/8.0.30/Chart.lock b/stable/babybuddy/8.0.31/Chart.lock similarity index 85% rename from stable/babybuddy/8.0.30/Chart.lock rename to stable/babybuddy/8.0.31/Chart.lock index d282477f29..8d0088471a 100644 --- a/stable/babybuddy/8.0.30/Chart.lock +++ b/stable/babybuddy/8.0.31/Chart.lock @@ -6,4 +6,4 @@ dependencies: repository: https://charts.truecharts.org/ version: 8.0.45 digest: sha256:cbd0c738accbe57a62a043587e6a7da0f81aab1fe49676902c3924b71f56226f -generated: "2022-07-24T09:09:31.100513131Z" +generated: "2022-07-25T14:43:36.056185874Z" diff --git a/stable/babybuddy/8.0.30/Chart.yaml b/stable/babybuddy/8.0.31/Chart.yaml similarity index 98% rename from stable/babybuddy/8.0.30/Chart.yaml rename to stable/babybuddy/8.0.31/Chart.yaml index 0b8f97a89e..b26533ab9b 100644 --- a/stable/babybuddy/8.0.30/Chart.yaml +++ b/stable/babybuddy/8.0.31/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v2 appVersion: "1.11.2" kubeVersion: ">=1.16.0-0" -version: 8.0.30 +version: 8.0.31 name: babybuddy description: Helps caregivers track sleep, feedings, diaper changes, tummy time and more to learn about and predict baby's needs without (as much) guess work. type: application diff --git a/stable/babybuddy/8.0.30/README.md b/stable/babybuddy/8.0.31/README.md similarity index 98% rename from stable/babybuddy/8.0.30/README.md rename to stable/babybuddy/8.0.31/README.md index 2fa02690d8..74b899d366 100644 --- a/stable/babybuddy/8.0.30/README.md +++ b/stable/babybuddy/8.0.31/README.md @@ -1,6 +1,6 @@ # babybuddy -![Version: 8.0.30](https://img.shields.io/badge/Version-8.0.30-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.11.2](https://img.shields.io/badge/AppVersion-1.11.2-informational?style=flat-square) +![Version: 8.0.31](https://img.shields.io/badge/Version-8.0.31-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.11.2](https://img.shields.io/badge/AppVersion-1.11.2-informational?style=flat-square) Helps caregivers track sleep, feedings, diaper changes, tummy time and more to learn about and predict baby's needs without (as much) guess work. diff --git a/stable/babybuddy/8.0.30/app-readme.md b/stable/babybuddy/8.0.31/app-readme.md similarity index 100% rename from stable/babybuddy/8.0.30/app-readme.md rename to stable/babybuddy/8.0.31/app-readme.md diff --git a/stable/babybuddy/8.0.30/charts/common-10.4.7.tgz b/stable/babybuddy/8.0.31/charts/common-10.4.7.tgz similarity index 100% rename from stable/babybuddy/8.0.30/charts/common-10.4.7.tgz rename to stable/babybuddy/8.0.31/charts/common-10.4.7.tgz diff --git a/stable/babybuddy/8.0.30/charts/postgresql-8.0.45.tgz b/stable/babybuddy/8.0.31/charts/postgresql-8.0.45.tgz similarity index 100% rename from stable/babybuddy/8.0.30/charts/postgresql-8.0.45.tgz rename to stable/babybuddy/8.0.31/charts/postgresql-8.0.45.tgz diff --git a/stable/babybuddy/8.0.30/ix_values.yaml b/stable/babybuddy/8.0.31/ix_values.yaml similarity index 90% rename from stable/babybuddy/8.0.30/ix_values.yaml rename to stable/babybuddy/8.0.31/ix_values.yaml index c7f9f32335..47990b9b7c 100644 --- a/stable/babybuddy/8.0.30/ix_values.yaml +++ b/stable/babybuddy/8.0.31/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/babybuddy pullPolicy: IfNotPresent - tag: v1.11.2@sha256:b540e758b86629ace4b6bf52a79074bc55f36d38ff53f6e31372c46228aa3c92 + tag: v1.11.2@sha256:adcf323626ff0cff5067c8816a08829388595b2ef0a4020f0a1106b7b8b1e94d env: DB_ENGINE: "django.db.backends.postgresql" diff --git a/stable/babybuddy/8.0.30/questions.yaml b/stable/babybuddy/8.0.31/questions.yaml similarity index 100% rename from stable/babybuddy/8.0.30/questions.yaml rename to stable/babybuddy/8.0.31/questions.yaml diff --git a/stable/babybuddy/8.0.30/templates/common.yaml b/stable/babybuddy/8.0.31/templates/common.yaml similarity index 100% rename from stable/babybuddy/8.0.30/templates/common.yaml rename to stable/babybuddy/8.0.31/templates/common.yaml diff --git a/stable/babybuddy/8.0.30/values.yaml b/stable/babybuddy/8.0.31/values.yaml similarity index 100% rename from stable/babybuddy/8.0.30/values.yaml rename to stable/babybuddy/8.0.31/values.yaml diff --git a/stable/booksonic-air/6.0.25/CHANGELOG.md b/stable/booksonic-air/6.0.26/CHANGELOG.md similarity index 89% rename from stable/booksonic-air/6.0.25/CHANGELOG.md rename to stable/booksonic-air/6.0.26/CHANGELOG.md index 5d8987bb62..7ae9eb6ea3 100644 --- a/stable/booksonic-air/6.0.25/CHANGELOG.md +++ b/stable/booksonic-air/6.0.26/CHANGELOG.md @@ -2,6 +2,15 @@ +## [booksonic-air-6.0.26](https://github.com/truecharts/apps/compare/booksonic-air-6.0.25...booksonic-air-6.0.26) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [booksonic-air-6.0.25](https://github.com/truecharts/apps/compare/booksonic-air-6.0.24...booksonic-air-6.0.25) (2022-07-23) ### Chore @@ -88,12 +97,3 @@ - bump to regenerate documentation - - - -### [booksonic-air-6.0.14](https://github.com/truecharts/apps/compare/booksonic-air-6.0.13...booksonic-air-6.0.14) (2022-07-12) - -#### Chore - -* update helm general non-major helm releases ([#3147](https://github.com/truecharts/apps/issues/3147)) - diff --git a/stable/booksonic-air/6.0.25/Chart.lock b/stable/booksonic-air/6.0.26/Chart.lock similarity index 80% rename from stable/booksonic-air/6.0.25/Chart.lock rename to stable/booksonic-air/6.0.26/Chart.lock index aedfc83c2f..ec26fab306 100644 --- a/stable/booksonic-air/6.0.25/Chart.lock +++ b/stable/booksonic-air/6.0.26/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.7 digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:10:14.34167253Z" +generated: "2022-07-25T14:43:28.911064969Z" diff --git a/stable/booksonic-air/6.0.25/Chart.yaml b/stable/booksonic-air/6.0.26/Chart.yaml similarity index 98% rename from stable/booksonic-air/6.0.25/Chart.yaml rename to stable/booksonic-air/6.0.26/Chart.yaml index 9571ecf914..18a99891a3 100644 --- a/stable/booksonic-air/6.0.25/Chart.yaml +++ b/stable/booksonic-air/6.0.26/Chart.yaml @@ -21,7 +21,7 @@ name: booksonic-air sources: - https://github.com/popeen/Booksonic-Air - https://hub.docker.com/r/linuxserver/booksonic-air -version: 6.0.25 +version: 6.0.26 annotations: truecharts.org/catagories: | - media diff --git a/stable/booksonic-air/6.0.25/README.md b/stable/booksonic-air/6.0.26/README.md similarity index 98% rename from stable/booksonic-air/6.0.25/README.md rename to stable/booksonic-air/6.0.26/README.md index b73f1d76c2..3a45a57332 100644 --- a/stable/booksonic-air/6.0.25/README.md +++ b/stable/booksonic-air/6.0.26/README.md @@ -1,6 +1,6 @@ # booksonic-air -![Version: 6.0.25](https://img.shields.io/badge/Version-6.0.25-informational?style=flat-square) ![AppVersion: 2201.1.0](https://img.shields.io/badge/AppVersion-2201.1.0-informational?style=flat-square) +![Version: 6.0.26](https://img.shields.io/badge/Version-6.0.26-informational?style=flat-square) ![AppVersion: 2201.1.0](https://img.shields.io/badge/AppVersion-2201.1.0-informational?style=flat-square) Booksonic is a platform for accessing the audibooks you own wherever you are diff --git a/stable/booksonic-air/6.0.25/app-readme.md b/stable/booksonic-air/6.0.26/app-readme.md similarity index 100% rename from stable/booksonic-air/6.0.25/app-readme.md rename to stable/booksonic-air/6.0.26/app-readme.md diff --git a/stable/booksonic-air/6.0.25/charts/common-10.4.7.tgz b/stable/booksonic-air/6.0.26/charts/common-10.4.7.tgz similarity index 100% rename from stable/booksonic-air/6.0.25/charts/common-10.4.7.tgz rename to stable/booksonic-air/6.0.26/charts/common-10.4.7.tgz diff --git a/stable/booksonic-air/6.0.25/ix_values.yaml b/stable/booksonic-air/6.0.26/ix_values.yaml similarity index 80% rename from stable/booksonic-air/6.0.25/ix_values.yaml rename to stable/booksonic-air/6.0.26/ix_values.yaml index ae73a21fcb..852c79b2b5 100644 --- a/stable/booksonic-air/6.0.25/ix_values.yaml +++ b/stable/booksonic-air/6.0.26/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/booksonic-air pullPolicy: IfNotPresent - tag: v2201.1.0@sha256:4aa84f7d35afdafac5ab757cf67cb3b8781ec58aee2d0eb04998e4380d1bdb3a + tag: v2201.1.0@sha256:412a3721103a3005c8ee91043d7fe400ba471b9b0d90bc68a44387920e9ab297 securityContext: readOnlyRootFilesystem: false diff --git a/stable/booksonic-air/6.0.25/questions.yaml b/stable/booksonic-air/6.0.26/questions.yaml similarity index 100% rename from stable/booksonic-air/6.0.25/questions.yaml rename to stable/booksonic-air/6.0.26/questions.yaml diff --git a/stable/booksonic-air/6.0.25/templates/common.yaml b/stable/booksonic-air/6.0.26/templates/common.yaml similarity index 100% rename from stable/booksonic-air/6.0.25/templates/common.yaml rename to stable/booksonic-air/6.0.26/templates/common.yaml diff --git a/stable/booksonic-air/6.0.25/values.yaml b/stable/booksonic-air/6.0.26/values.yaml similarity index 100% rename from stable/booksonic-air/6.0.25/values.yaml rename to stable/booksonic-air/6.0.26/values.yaml diff --git a/stable/calibre/7.0.27/CHANGELOG.md b/stable/calibre/7.0.28/CHANGELOG.md similarity index 90% rename from stable/calibre/7.0.27/CHANGELOG.md rename to stable/calibre/7.0.28/CHANGELOG.md index 9421fd0aae..01513976b4 100644 --- a/stable/calibre/7.0.27/CHANGELOG.md +++ b/stable/calibre/7.0.28/CHANGELOG.md @@ -2,6 +2,15 @@ +## [calibre-7.0.28](https://github.com/truecharts/apps/compare/calibre-web-11.0.26...calibre-7.0.28) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [calibre-7.0.27](https://github.com/truecharts/apps/compare/calibre-web-11.0.25...calibre-7.0.27) (2022-07-23) ### Chore @@ -88,12 +97,3 @@ ### Chore - bump to regenerate documentation - - - - -### [calibre-7.0.16](https://github.com/truecharts/apps/compare/calibre-web-11.0.13...calibre-7.0.16) (2022-07-12) - -#### Chore - -* update helm general non-major helm releases ([#3147](https://github.com/truecharts/apps/issues/3147)) diff --git a/stable/dokuwiki/3.0.36/Chart.lock b/stable/calibre/7.0.28/Chart.lock similarity index 80% rename from stable/dokuwiki/3.0.36/Chart.lock rename to stable/calibre/7.0.28/Chart.lock index 876b2fa292..4f4a93309e 100644 --- a/stable/dokuwiki/3.0.36/Chart.lock +++ b/stable/calibre/7.0.28/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.7 digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:13:05.737682967Z" +generated: "2022-07-25T14:43:28.868221698Z" diff --git a/stable/calibre/7.0.27/Chart.yaml b/stable/calibre/7.0.28/Chart.yaml similarity index 97% rename from stable/calibre/7.0.27/Chart.yaml rename to stable/calibre/7.0.28/Chart.yaml index 1a455902fa..8d6628f731 100644 --- a/stable/calibre/7.0.27/Chart.yaml +++ b/stable/calibre/7.0.28/Chart.yaml @@ -18,7 +18,7 @@ name: calibre sources: - https://hub.docker.com/r/linuxserver/calibre/ - https://github.com/kovidgoyal/calibre/ -version: 7.0.27 +version: 7.0.28 annotations: truecharts.org/catagories: | - media diff --git a/stable/calibre/7.0.27/README.md b/stable/calibre/7.0.28/README.md similarity index 98% rename from stable/calibre/7.0.27/README.md rename to stable/calibre/7.0.28/README.md index 75076ea593..05ff08dcc8 100644 --- a/stable/calibre/7.0.27/README.md +++ b/stable/calibre/7.0.28/README.md @@ -1,6 +1,6 @@ # calibre -![Version: 7.0.27](https://img.shields.io/badge/Version-7.0.27-informational?style=flat-square) ![AppVersion: 6.1.0](https://img.shields.io/badge/AppVersion-6.1.0-informational?style=flat-square) +![Version: 7.0.28](https://img.shields.io/badge/Version-7.0.28-informational?style=flat-square) ![AppVersion: 6.1.0](https://img.shields.io/badge/AppVersion-6.1.0-informational?style=flat-square) Calibre is a powerful and easy to use e-book manager. diff --git a/stable/calibre/7.0.27/app-readme.md b/stable/calibre/7.0.28/app-readme.md similarity index 100% rename from stable/calibre/7.0.27/app-readme.md rename to stable/calibre/7.0.28/app-readme.md diff --git a/stable/calibre/7.0.27/charts/common-10.4.7.tgz b/stable/calibre/7.0.28/charts/common-10.4.7.tgz similarity index 100% rename from stable/calibre/7.0.27/charts/common-10.4.7.tgz rename to stable/calibre/7.0.28/charts/common-10.4.7.tgz diff --git a/stable/calibre/7.0.27/ix_values.yaml b/stable/calibre/7.0.28/ix_values.yaml similarity index 86% rename from stable/calibre/7.0.27/ix_values.yaml rename to stable/calibre/7.0.28/ix_values.yaml index a11aab165b..f8bfba5467 100644 --- a/stable/calibre/7.0.27/ix_values.yaml +++ b/stable/calibre/7.0.28/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/calibre - tag: v6.1.0@sha256:4b75c66d387d2fcef0a6f618c8c21ad03ef7802735ccb31bc2d1e79767f6fe4a + tag: v6.1.0@sha256:611f6ebaa7a2a5f428263e2fe2b568ce0fa0579f83cd2f6a659375fa8c3d45f9 pullPolicy: IfNotPresent securityContext: diff --git a/stable/calibre/7.0.27/questions.yaml b/stable/calibre/7.0.28/questions.yaml similarity index 100% rename from stable/calibre/7.0.27/questions.yaml rename to stable/calibre/7.0.28/questions.yaml diff --git a/stable/calibre/7.0.27/templates/common.yaml b/stable/calibre/7.0.28/templates/common.yaml similarity index 100% rename from stable/calibre/7.0.27/templates/common.yaml rename to stable/calibre/7.0.28/templates/common.yaml diff --git a/stable/calibre/7.0.27/values.yaml b/stable/calibre/7.0.28/values.yaml similarity index 100% rename from stable/calibre/7.0.27/values.yaml rename to stable/calibre/7.0.28/values.yaml diff --git a/stable/cyberchef/2.0.45/CHANGELOG.md b/stable/cyberchef/2.0.46/CHANGELOG.md similarity index 92% rename from stable/cyberchef/2.0.45/CHANGELOG.md rename to stable/cyberchef/2.0.46/CHANGELOG.md index bb7122f510..1587317d78 100644 --- a/stable/cyberchef/2.0.45/CHANGELOG.md +++ b/stable/cyberchef/2.0.46/CHANGELOG.md @@ -2,6 +2,15 @@ +## [cyberchef-2.0.46](https://github.com/truecharts/apps/compare/cyberchef-2.0.45...cyberchef-2.0.46) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [cyberchef-2.0.45](https://github.com/truecharts/apps/compare/cyberchef-2.0.43...cyberchef-2.0.45) (2022-07-24) ### Chore @@ -88,12 +97,3 @@ - bump to ensure .helmignore is present on all Charts - - -## [cyberchef-2.0.34](https://github.com/truecharts/apps/compare/cyberchef-2.0.33...cyberchef-2.0.34) (2022-07-14) - -### Chore - -- update docker general non-major ([#3171](https://github.com/truecharts/apps/issues/3171)) - - diff --git a/stable/calibre/7.0.27/Chart.lock b/stable/cyberchef/2.0.46/Chart.lock similarity index 80% rename from stable/calibre/7.0.27/Chart.lock rename to stable/cyberchef/2.0.46/Chart.lock index a8c04f5d6a..4187a2e13e 100644 --- a/stable/calibre/7.0.27/Chart.lock +++ b/stable/cyberchef/2.0.46/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.7 digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:10:33.7886829Z" +generated: "2022-07-25T14:43:28.975081721Z" diff --git a/stable/cyberchef/2.0.45/Chart.yaml b/stable/cyberchef/2.0.46/Chart.yaml similarity index 97% rename from stable/cyberchef/2.0.45/Chart.yaml rename to stable/cyberchef/2.0.46/Chart.yaml index 7869d953b6..36003cb8ea 100644 --- a/stable/cyberchef/2.0.45/Chart.yaml +++ b/stable/cyberchef/2.0.46/Chart.yaml @@ -17,7 +17,7 @@ maintainers: name: cyberchef sources: - https://hub.docker.com/r/mpepping/cyberchef -version: 2.0.45 +version: 2.0.46 annotations: truecharts.org/catagories: | - utilities diff --git a/stable/cyberchef/2.0.45/README.md b/stable/cyberchef/2.0.46/README.md similarity index 98% rename from stable/cyberchef/2.0.45/README.md rename to stable/cyberchef/2.0.46/README.md index 0341f16a74..5b0e0f0aca 100644 --- a/stable/cyberchef/2.0.45/README.md +++ b/stable/cyberchef/2.0.46/README.md @@ -1,6 +1,6 @@ # cyberchef -![Version: 2.0.45](https://img.shields.io/badge/Version-2.0.45-informational?style=flat-square) ![AppVersion: 9.46.0](https://img.shields.io/badge/AppVersion-9.46.0-informational?style=flat-square) +![Version: 2.0.46](https://img.shields.io/badge/Version-2.0.46-informational?style=flat-square) ![AppVersion: 9.46.0](https://img.shields.io/badge/AppVersion-9.46.0-informational?style=flat-square) CyberChef is a simple, intuitive web app for carrying out all manner of "cyber" operations within a web browser. diff --git a/stable/cyberchef/2.0.45/app-readme.md b/stable/cyberchef/2.0.46/app-readme.md similarity index 100% rename from stable/cyberchef/2.0.45/app-readme.md rename to stable/cyberchef/2.0.46/app-readme.md diff --git a/stable/cyberchef/2.0.45/charts/common-10.4.7.tgz b/stable/cyberchef/2.0.46/charts/common-10.4.7.tgz similarity index 100% rename from stable/cyberchef/2.0.45/charts/common-10.4.7.tgz rename to stable/cyberchef/2.0.46/charts/common-10.4.7.tgz diff --git a/stable/cyberchef/2.0.45/ix_values.yaml b/stable/cyberchef/2.0.46/ix_values.yaml similarity index 76% rename from stable/cyberchef/2.0.45/ix_values.yaml rename to stable/cyberchef/2.0.46/ix_values.yaml index 8bc223c7fe..d1e7b2ccfd 100644 --- a/stable/cyberchef/2.0.45/ix_values.yaml +++ b/stable/cyberchef/2.0.46/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/cyberchef - tag: v9.46.0@sha256:96dc9cd80c76d3350f4b15f571367a4b4d93cded2f86d2bdfc9921f31cad0da2 + tag: v9.46.0@sha256:baa5d4caac7a788ebe0a219be34c4b21e492cab59bbedeedbde96116484f1b18 pullPolicy: IfNotPresent securityContext: diff --git a/stable/cyberchef/2.0.45/questions.yaml b/stable/cyberchef/2.0.46/questions.yaml similarity index 100% rename from stable/cyberchef/2.0.45/questions.yaml rename to stable/cyberchef/2.0.46/questions.yaml diff --git a/stable/cyberchef/2.0.45/templates/common.yaml b/stable/cyberchef/2.0.46/templates/common.yaml similarity index 100% rename from stable/cyberchef/2.0.45/templates/common.yaml rename to stable/cyberchef/2.0.46/templates/common.yaml diff --git a/stable/cyberchef/2.0.45/values.yaml b/stable/cyberchef/2.0.46/values.yaml similarity index 100% rename from stable/cyberchef/2.0.45/values.yaml rename to stable/cyberchef/2.0.46/values.yaml diff --git a/stable/dokuwiki/3.0.36/CHANGELOG.md b/stable/dokuwiki/3.0.37/CHANGELOG.md similarity index 91% rename from stable/dokuwiki/3.0.36/CHANGELOG.md rename to stable/dokuwiki/3.0.37/CHANGELOG.md index bf1ff5f53d..654db7b968 100644 --- a/stable/dokuwiki/3.0.36/CHANGELOG.md +++ b/stable/dokuwiki/3.0.37/CHANGELOG.md @@ -2,6 +2,15 @@ +## [dokuwiki-3.0.37](https://github.com/truecharts/apps/compare/dokuwiki-3.0.36...dokuwiki-3.0.37) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [dokuwiki-3.0.36](https://github.com/truecharts/apps/compare/dokuwiki-3.0.35...dokuwiki-3.0.36) (2022-07-23) ### Chore @@ -88,12 +97,3 @@ - bump to ensure .helmignore is present on all Charts - -## [dokuwiki-3.0.26](https://github.com/truecharts/apps/compare/dokuwiki-3.0.25...dokuwiki-3.0.26) (2022-07-13) - -### Chore - -- update docker general non-major ([#3157](https://github.com/truecharts/apps/issues/3157)) - - - diff --git a/stable/cyberchef/2.0.45/Chart.lock b/stable/dokuwiki/3.0.37/Chart.lock similarity index 80% rename from stable/cyberchef/2.0.45/Chart.lock rename to stable/dokuwiki/3.0.37/Chart.lock index bc46a5a9f5..290e6e45a4 100644 --- a/stable/cyberchef/2.0.45/Chart.lock +++ b/stable/dokuwiki/3.0.37/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.7 digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:11:50.46517601Z" +generated: "2022-07-25T14:43:51.113867602Z" diff --git a/stable/dokuwiki/3.0.36/Chart.yaml b/stable/dokuwiki/3.0.37/Chart.yaml similarity index 98% rename from stable/dokuwiki/3.0.36/Chart.yaml rename to stable/dokuwiki/3.0.37/Chart.yaml index ea8e45b4df..284a45227e 100644 --- a/stable/dokuwiki/3.0.36/Chart.yaml +++ b/stable/dokuwiki/3.0.37/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v2 kubeVersion: ">=1.16.0-0" name: dokuwiki -version: 3.0.36 +version: 3.0.37 appVersion: "20200729.0" description: Dokuwiki is a simple to use and highly versatile Open Source wiki software that doesn't require a database. type: application diff --git a/stable/dokuwiki/3.0.36/README.md b/stable/dokuwiki/3.0.37/README.md similarity index 98% rename from stable/dokuwiki/3.0.36/README.md rename to stable/dokuwiki/3.0.37/README.md index 234a99e7a9..f0b99b8adf 100644 --- a/stable/dokuwiki/3.0.36/README.md +++ b/stable/dokuwiki/3.0.37/README.md @@ -1,6 +1,6 @@ # dokuwiki -![Version: 3.0.36](https://img.shields.io/badge/Version-3.0.36-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 20200729.0](https://img.shields.io/badge/AppVersion-20200729.0-informational?style=flat-square) +![Version: 3.0.37](https://img.shields.io/badge/Version-3.0.37-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 20200729.0](https://img.shields.io/badge/AppVersion-20200729.0-informational?style=flat-square) Dokuwiki is a simple to use and highly versatile Open Source wiki software that doesn't require a database. diff --git a/stable/dokuwiki/3.0.36/app-readme.md b/stable/dokuwiki/3.0.37/app-readme.md similarity index 100% rename from stable/dokuwiki/3.0.36/app-readme.md rename to stable/dokuwiki/3.0.37/app-readme.md diff --git a/stable/dokuwiki/3.0.36/charts/common-10.4.7.tgz b/stable/dokuwiki/3.0.37/charts/common-10.4.7.tgz similarity index 100% rename from stable/dokuwiki/3.0.36/charts/common-10.4.7.tgz rename to stable/dokuwiki/3.0.37/charts/common-10.4.7.tgz diff --git a/stable/dokuwiki/3.0.36/ix_values.yaml b/stable/dokuwiki/3.0.37/ix_values.yaml similarity index 85% rename from stable/dokuwiki/3.0.36/ix_values.yaml rename to stable/dokuwiki/3.0.37/ix_values.yaml index 12d9c9a4eb..b684bf73b7 100644 --- a/stable/dokuwiki/3.0.36/ix_values.yaml +++ b/stable/dokuwiki/3.0.37/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/dokuwiki pullPolicy: IfNotPresent - tag: v20200729.0.0@sha256:7f612e378aef7cb72a765e93c329b983afae931ca4731f14dc168fb2e1217ec1 + tag: v20200729.0.0@sha256:e56c11866914b56183627c7912d15779b8997924f55fc58549f61857ea93f8da securityContext: runAsNonRoot: false diff --git a/stable/dokuwiki/3.0.36/questions.yaml b/stable/dokuwiki/3.0.37/questions.yaml similarity index 100% rename from stable/dokuwiki/3.0.36/questions.yaml rename to stable/dokuwiki/3.0.37/questions.yaml diff --git a/stable/dokuwiki/3.0.36/templates/common.yaml b/stable/dokuwiki/3.0.37/templates/common.yaml similarity index 100% rename from stable/dokuwiki/3.0.36/templates/common.yaml rename to stable/dokuwiki/3.0.37/templates/common.yaml diff --git a/stable/dokuwiki/3.0.36/values.yaml b/stable/dokuwiki/3.0.37/values.yaml similarity index 100% rename from stable/dokuwiki/3.0.36/values.yaml rename to stable/dokuwiki/3.0.37/values.yaml diff --git a/stable/hammond/2.0.21/Chart.lock b/stable/hammond/2.0.21/Chart.lock deleted file mode 100644 index 92db7f0122..0000000000 --- a/stable/hammond/2.0.21/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.7 -digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:17:52.368597395Z" diff --git a/stable/hammond/2.0.21/CHANGELOG.md b/stable/hammond/2.0.22/CHANGELOG.md similarity index 90% rename from stable/hammond/2.0.21/CHANGELOG.md rename to stable/hammond/2.0.22/CHANGELOG.md index c828dc05b9..3b3116e1ee 100644 --- a/stable/hammond/2.0.21/CHANGELOG.md +++ b/stable/hammond/2.0.22/CHANGELOG.md @@ -2,6 +2,15 @@ +## [hammond-2.0.22](https://github.com/truecharts/apps/compare/hammond-2.0.21...hammond-2.0.22) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [hammond-2.0.21](https://github.com/truecharts/apps/compare/hammond-2.0.20...hammond-2.0.21) (2022-07-23) ### Chore @@ -88,12 +97,3 @@ #### Chore * update helm general non-major helm releases ([#3147](https://github.com/truecharts/apps/issues/3147)) - - - - -### [hammond-2.0.10](https://github.com/truecharts/apps/compare/hammond-2.0.9...hammond-2.0.10) (2022-07-11) - -#### Chore - -* move icons into the apps folder ([#3139](https://github.com/truecharts/apps/issues/3139)) diff --git a/stable/hammond/2.0.22/Chart.lock b/stable/hammond/2.0.22/Chart.lock new file mode 100644 index 0000000000..c07346a9ad --- /dev/null +++ b/stable/hammond/2.0.22/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f +generated: "2022-07-25T14:43:51.016065304Z" diff --git a/stable/hammond/2.0.21/Chart.yaml b/stable/hammond/2.0.22/Chart.yaml similarity index 97% rename from stable/hammond/2.0.21/Chart.yaml rename to stable/hammond/2.0.22/Chart.yaml index 4c7f0d32fb..17842fb88a 100644 --- a/stable/hammond/2.0.21/Chart.yaml +++ b/stable/hammond/2.0.22/Chart.yaml @@ -18,7 +18,7 @@ name: hammond sources: - https://github.com/akhilrex/hammond - https://hub.docker.com/r/akhilrex/hammond -version: 2.0.21 +version: 2.0.22 annotations: truecharts.org/catagories: | - productivity diff --git a/stable/hammond/2.0.21/README.md b/stable/hammond/2.0.22/README.md similarity index 98% rename from stable/hammond/2.0.21/README.md rename to stable/hammond/2.0.22/README.md index eb5f10ff00..291bbf1cc4 100644 --- a/stable/hammond/2.0.21/README.md +++ b/stable/hammond/2.0.22/README.md @@ -1,6 +1,6 @@ # hammond -![Version: 2.0.21](https://img.shields.io/badge/Version-2.0.21-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square) +![Version: 2.0.22](https://img.shields.io/badge/Version-2.0.22-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square) A self-hosted vehicle expense tracking system with support for multiple users. diff --git a/stable/hammond/2.0.21/app-readme.md b/stable/hammond/2.0.22/app-readme.md similarity index 100% rename from stable/hammond/2.0.21/app-readme.md rename to stable/hammond/2.0.22/app-readme.md diff --git a/stable/hammond/2.0.21/charts/common-10.4.7.tgz b/stable/hammond/2.0.22/charts/common-10.4.7.tgz similarity index 100% rename from stable/hammond/2.0.21/charts/common-10.4.7.tgz rename to stable/hammond/2.0.22/charts/common-10.4.7.tgz diff --git a/stable/hammond/2.0.21/ix_values.yaml b/stable/hammond/2.0.22/ix_values.yaml similarity index 81% rename from stable/hammond/2.0.21/ix_values.yaml rename to stable/hammond/2.0.22/ix_values.yaml index d9d8541199..ae04482c69 100644 --- a/stable/hammond/2.0.21/ix_values.yaml +++ b/stable/hammond/2.0.22/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/hammond - tag: 1.0.0@sha256:a38f0455634f15a38535b6f067f0cd6b62770df51d0c40c5f09ad19cbe066702 + tag: 1.0.0@sha256:7bba8afd2d246a8bc994f908df7e3463258bfea01961bf62df986ef5280de471 pullPolicy: IfNotPresent env: diff --git a/stable/hammond/2.0.21/questions.yaml b/stable/hammond/2.0.22/questions.yaml similarity index 100% rename from stable/hammond/2.0.21/questions.yaml rename to stable/hammond/2.0.22/questions.yaml diff --git a/stable/hammond/2.0.21/templates/_secrets.tpl b/stable/hammond/2.0.22/templates/_secrets.tpl similarity index 100% rename from stable/hammond/2.0.21/templates/_secrets.tpl rename to stable/hammond/2.0.22/templates/_secrets.tpl diff --git a/stable/hammond/2.0.21/templates/common.yaml b/stable/hammond/2.0.22/templates/common.yaml similarity index 100% rename from stable/hammond/2.0.21/templates/common.yaml rename to stable/hammond/2.0.22/templates/common.yaml diff --git a/stable/hammond/2.0.21/values.yaml b/stable/hammond/2.0.22/values.yaml similarity index 100% rename from stable/hammond/2.0.21/values.yaml rename to stable/hammond/2.0.22/values.yaml diff --git a/stable/heimdall/11.0.25/CHANGELOG.md b/stable/heimdall/11.0.25/CHANGELOG.md new file mode 100644 index 0000000000..2119e7d4e9 --- /dev/null +++ b/stable/heimdall/11.0.25/CHANGELOG.md @@ -0,0 +1,99 @@ +# Changelog + + + +## [heimdall-11.0.25](https://github.com/truecharts/apps/compare/heimdall-11.0.24...heimdall-11.0.25) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + +## [heimdall-11.0.24](https://github.com/truecharts/apps/compare/heimdall-11.0.23...heimdall-11.0.24) (2022-07-23) + +### Chore + +- Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) + + + + +## [heimdall-11.0.24](https://github.com/truecharts/apps/compare/heimdall-11.0.23...heimdall-11.0.24) (2022-07-23) + +### Chore + +- Auto-update chart README [skip ci] + - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) + + + + +## [heimdall-11.0.24](https://github.com/truecharts/apps/compare/heimdall-11.0.23...heimdall-11.0.24) (2022-07-23) + +### Chore + +- update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) + + + + +## [heimdall-11.0.23](https://github.com/truecharts/apps/compare/heimdall-11.0.21...heimdall-11.0.23) (2022-07-22) + +### Chore + +- Bump all charts to generate config and container references due to huge increase of repository + - update helm general non-major helm releases ([#3268](https://github.com/truecharts/apps/issues/3268)) + + + +## [heimdall-11.0.21](https://github.com/truecharts/apps/compare/heimdall-11.0.20...heimdall-11.0.21) (2022-07-20) + +### Chore + +- update docker general non-major ([#3222](https://github.com/truecharts/apps/issues/3222)) + + + +## [heimdall-11.0.20](https://github.com/truecharts/apps/compare/heimdall-11.0.19...heimdall-11.0.20) (2022-07-19) + +### Chore + +- Update Readme and Description on SCALE + + + +## [heimdall-11.0.19](https://github.com/truecharts/apps/compare/heimdall-11.0.18...heimdall-11.0.19) (2022-07-14) + +### Fix + +- regenerate catalog and update template + + + +## [heimdall-11.0.18](https://github.com/truecharts/apps/compare/heimdall-11.0.16...heimdall-11.0.18) (2022-07-14) + +### Fix + +- bump to ensure .helmignore is present on all Charts + + + +## [heimdall-11.0.16](https://github.com/truecharts/apps/compare/heimdall-11.0.14...heimdall-11.0.16) (2022-07-12) + +### Chore + +- update icons ([#3156](https://github.com/truecharts/apps/issues/3156)) +- bump to cleanup old docs and use correct icon urls + + + +## [heimdall-11.0.14](https://github.com/truecharts/apps/compare/heimdall-11.0.13...heimdall-11.0.14) (2022-07-12) + +### Chore + +- bump to regenerate documentation + diff --git a/stable/heimdall/11.0.25/Chart.lock b/stable/heimdall/11.0.25/Chart.lock new file mode 100644 index 0000000000..d3605a369b --- /dev/null +++ b/stable/heimdall/11.0.25/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f +generated: "2022-07-25T14:43:51.058606769Z" diff --git a/stable/heimdall/11.0.25/Chart.yaml b/stable/heimdall/11.0.25/Chart.yaml new file mode 100644 index 0000000000..d78edf07f5 --- /dev/null +++ b/stable/heimdall/11.0.25/Chart.yaml @@ -0,0 +1,27 @@ +apiVersion: v2 +appVersion: "2.4.13" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +deprecated: false +description: An Application dashboard and launcher +home: https://github.com/truecharts/apps/tree/master/charts/stable/heimdall +icon: https://truecharts.org/img/chart-icons/heimdall.png +keywords: + - heimdall +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: heimdall +sources: + - https://github.com/linuxserver/Heimdall/ +type: application +version: 11.0.25 +annotations: + truecharts.org/catagories: | + - organizers + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/stable/heimdall/11.0.25/README.md b/stable/heimdall/11.0.25/README.md new file mode 100644 index 0000000000..f3fa5d41f9 --- /dev/null +++ b/stable/heimdall/11.0.25/README.md @@ -0,0 +1,107 @@ +# heimdall + +![Version: 11.0.25](https://img.shields.io/badge/Version-11.0.25-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.4.13](https://img.shields.io/badge/AppVersion-2.4.13-informational?style=flat-square) + +An Application dashboard and launcher + +TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE. + +This readme is just an automatically generated general guide on installing our Helm Charts and Apps. +For more information, please click here: [heimdall](https://truecharts.org/docs/charts/stable/heimdall) + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** + +## Source Code + +* + +## Requirements + +Kubernetes: `>=1.16.0-0` + +## Dependencies + +| Repository | Name | Version | +|------------|------|---------| +| https://library-charts.truecharts.org | common | 10.4.7 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this App on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/Quick-Start%20Guides/02-Installing-an-App/). + +### Helm + +To install the chart with the release name `heimdall` + +```console +helm repo add TrueCharts https://helm.truecharts.org +helm repo update +helm install heimdall TrueCharts/heimdall +``` + +## Uninstall + +### TrueNAS SCALE + +**Upgrading, Rolling Back and Uninstalling the Chart** + +To upgrade, rollback or delete this App from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/Quick-Start%20Guides/04-Upgrade-rollback-delete-an-App/). + +### Helm + +To uninstall the `heimdall` deployment + +```console +helm uninstall heimdall +``` + +## Configuration + +### Helm + +#### Available Settings + +Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values. +Other values may be used from the [values.yaml](https://github.com/truecharts/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common). + +#### Configure using the Commandline + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install heimdall \ + --set env.TZ="America/New York" \ + TrueCharts/heimdall +``` + +#### Configure using a yaml file + +Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. + +```console +helm install heimdall TrueCharts/heimdall -f values.yaml +``` + +#### Connecting to other apps + +If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our [Linking Apps Internally](https://truecharts.org/docs/manual/Quick-Start%20Guides/06-linking-apps/) quick-start guide. + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Important-MUST-READ). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/apps/issues/new/choose) + +--- + +## Sponsor TrueCharts + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! + +--- + +All Rights Reserved - The TrueCharts Project diff --git a/stable/heimdall/11.0.25/app-readme.md b/stable/heimdall/11.0.25/app-readme.md new file mode 100644 index 0000000000..ba1e6d0bf6 --- /dev/null +++ b/stable/heimdall/11.0.25/app-readme.md @@ -0,0 +1,8 @@ +An Application dashboard and launcher + +This App is supplied by TrueCharts, for more information visit the manual: https://truecharts.org/charts/stable/heimdall + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! diff --git a/stable/impostor-server/1.0.25/charts/common-10.4.7.tgz b/stable/heimdall/11.0.25/charts/common-10.4.7.tgz similarity index 100% rename from stable/impostor-server/1.0.25/charts/common-10.4.7.tgz rename to stable/heimdall/11.0.25/charts/common-10.4.7.tgz diff --git a/stable/heimdall/11.0.25/ix_values.yaml b/stable/heimdall/11.0.25/ix_values.yaml new file mode 100644 index 0000000000..ad3870f494 --- /dev/null +++ b/stable/heimdall/11.0.25/ix_values.yaml @@ -0,0 +1,28 @@ +image: + repository: tccr.io/truecharts/heimdall + tag: v2.4.13@sha256:602dc4f7de2db08a304d8cf4cd91a7870ea8f9f0279ba5c67c7ef36fa5d296f1 + pullPolicy: IfNotPresent + +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false + +podSecurityContext: + runAsUser: 0 + runAsGroup: 0 + +service: + main: + ports: + main: + port: 10014 + targetPort: 80 + +probes: + startup: + enabled: true + +persistence: + config: + enabled: true + mountPath: "/config" diff --git a/stable/heimdall/11.0.25/questions.yaml b/stable/heimdall/11.0.25/questions.yaml new file mode 100644 index 0000000000..7a5b15b1f8 --- /dev/null +++ b/stable/heimdall/11.0.25/questions.yaml @@ -0,0 +1,2430 @@ +groups: + - name: "Container Image" + description: "Image to be used for container" + - name: "Controller" + description: "Configure workload deployment" + - name: "Container Configuration" + description: "additional container configuration" + - name: "App Configuration" + description: "App specific config options" + - name: "Networking and Services" + description: "Configure Network and Services for container" + - name: "Storage and Persistence" + description: "Persist and share data that is separate from the container" + - name: "Ingress" + description: "Ingress Configuration" + - name: "Security and Permissions" + description: "Configure security context and permissions" + - name: "Resources and Devices" + description: "Specify resources/devices to be allocated to workload" + - name: "Middlewares" + description: "Traefik Middlewares" + - name: "Metrics" + description: "Metrics" + - name: "Addons" + description: "Addon Configuration" + - name: "Advanced" + description: "Advanced Configuration" +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true + - variable: global + label: "global settings" + group: "Controller" + schema: + type: dict + hidden: true + attrs: + - variable: isSCALE + label: "flag this is SCALE" + schema: + type: boolean + default: true + hidden: true + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" + - variable: expert + label: "Show Expert Configuration Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: extraArgs + label: "Extra Args" + schema: + type: list + default: [] + items: + - variable: arg + label: "arg" + schema: + type: string + - variable: labelsList + label: "Controller Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: " Controller Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: TZ + label: "Timezone" + group: "Container Configuration" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + + - variable: envList + label: "Image environment" + group: "Container Configuration" + schema: + type: list + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: expertpodconf + group: "Container Configuration" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: tty + label: "Enable TTY" + description: "Determines whether containers in a pod runs with TTY enabled. By default pod has it disabled." + group: "Workload Details" + schema: + type: boolean + default: false + - variable: stdin + label: "Enable STDIN" + description: "Determines whether containers in a pod runs with stdin enabled. By default pod has it disabled." + group: "Workload Details" + schema: + type: boolean + default: false + - variable: termination + group: "Container Configuration" + label: "Termination settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: gracePeriodSeconds + label: "Grace Period Seconds" + schema: + type: int + default: 10 + - variable: podLabelsList + group: "Container Configuration" + label: "Pod Labels" + schema: + type: list + default: [] + items: + - variable: podLabelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: podAnnotationsList + group: "Container Configuration" + label: "Pod Annotations" + schema: + type: list + default: [] + items: + - variable: podAnnotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the service" + schema: + type: boolean + default: true + hidden: true + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "Simple" + enum: + - value: "Simple" + description: "Simple" + - value: "ClusterIP" + description: "ClusterIP" + - value: "NodePort" + description: "NodePort (Advanced)" + - value: "LoadBalancer" + description: "LoadBalancer (Advanced)" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: ipFamilyPolicy + label: "IP Family Policy" + description: "(Advanced) Specify the ip policy" + schema: + show_if: [["type", "!=", "Simple"]] + type: string + default: "SingleStack" + enum: + - value: "SingleStack" + description: "SingleStack" + - value: "PreferDualStack" + description: "PreferDualStack" + - value: "RequireDualStack" + description: "RequireDualStack" + - variable: ipFamilies + label: "(advanced) IP families" + description: "(advanced) The ip families that should be used" + schema: + show_if: [["type", "!=", "Simple"]] + type: list + default: [] + items: + - variable: ipFamily + label: "IP family" + schema: + type: string + - variable: ports + label: "Service's Port(s) Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 10014 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 80 + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + + - variable: externalInterfaces + description: "Add External Interfaces" + label: "Add external Interfaces" + group: "Networking" + schema: + type: list + items: + - variable: interfaceConfiguration + description: "Interface Configuration" + label: "Interface Configuration" + schema: + type: dict + $ref: + - "normalize/interfaceConfiguration" + attrs: + - variable: hostInterface + description: "Please specify host interface" + label: "Host Interface" + schema: + type: string + required: true + $ref: + - "definitions/interface" + - variable: ipam + description: "Define how IP Address will be managed" + label: "IP Address Management" + schema: + type: dict + required: true + attrs: + - variable: type + description: "Specify type for IPAM" + label: "IPAM Type" + schema: + type: string + required: true + enum: + - value: "dhcp" + description: "Use DHCP" + - value: "static" + description: "Use static IP" + show_subquestions_if: "static" + subquestions: + - variable: staticIPConfigurations + label: "Static IP Addresses" + schema: + type: list + items: + - variable: staticIP + label: "Static IP" + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: "Static Routes" + schema: + type: list + items: + - variable: staticRouteConfiguration + label: "Static Route Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: destination + label: "Destination" + schema: + type: ipaddr + cidr: true + required: true + - variable: gateway + label: "Gateway" + schema: + type: ipaddr + cidr: false + required: true + + - variable: dnsPolicy + group: "Networking and Services" + label: "dnsPolicy" + schema: + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "ClusterFirst" + description: "ClusterFirst" + - value: "ClusterFirstWithHostNet" + description: "ClusterFirstWithHostNet" + - value: "None" + description: "None" + + - variable: dnsConfig + label: "DNS Configuration" + group: "Networking and Services" + description: "Specify custom DNS configuration which will be applied to the pod" + schema: + additional_attrs: true + type: dict + attrs: + - variable: nameservers + label: "Nameservers" + schema: + default: [] + type: list + items: + - variable: nameserver + label: "Nameserver" + schema: + type: string + - variable: options + label: "options" + schema: + default: [] + type: list + items: + - variable: option + label: "Option Entry" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: searches + label: "Searches" + schema: + default: [] + type: list + items: + - variable: search + label: "Search Entry" + schema: + type: string + + - variable: serviceList + label: "Add Manual Custom Services" + group: "Networking and Services" + schema: + type: list + default: [] + items: + - variable: serviceListEntry + label: "Custom Service" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the service" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name" + schema: + type: string + default: "" + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "Simple" + enum: + - value: "Simple" + description: "Simple" + - value: "NodePort" + description: "NodePort" + - value: "ClusterIP" + description: "ClusterIP" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: portsList + label: "Additional Service Ports" + schema: + type: list + default: [] + items: + - variable: portsListEntry + label: "Custom ports" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Port Name" + schema: + type: string + default: "" + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: targetPort + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + required: true + - variable: port + label: "Container Port" + schema: + type: int + required: true + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort" + schema: + type: int + min: 9000 + max: 65535 + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + - variable: config + label: "App Config Storage" + description: "Stores the Application Configuration." + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Type of Storage" + description: "Sets the persistence type, Anything other than PVC could break rollback!" + schema: + type: string + default: "simplePVC" + enum: + - value: "simplePVC" + description: "PVC (simple)" + - value: "simpleHP" + description: "HostPath (simple)" + - value: "emptyDir" + description: "emptyDir" + - value: "pvc" + description: "pvc" + - value: "hostPath" + description: "hostPath" + - value: "nfs" + description: "NFS Share" + - variable: server + label: "NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: "Path on NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissionsSimple + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "simpleHP"]] + type: boolean + default: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPathSimple + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: medium + label: "EmptyDir Medium" + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: size + label: "Size quotum of storage" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "999Gi" + - variable: hostPathType + label: "(Advanced) hostPath Type" + schema: + show_if: [["type", "=", "hostPath"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "DirectoryOrCreate" + description: "DirectoryOrCreate" + - value: "Directory" + description: "Directory" + - value: "FileOrCreate" + description: "FileOrCreate" + - value: "File" + description: "File" + - value: "Socket" + description: "Socket" + - value: "CharDevice" + description: "CharDevice" + - value: "BlockDevice" + description: "BlockDevice" + - variable: storageClass + label: "(Advanced) storageClass" + description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "SCALE-ZFS" + - variable: accessMode + label: "(Advanced) Access Mode" + description: "Allow or disallow multiple PVC's writhing to the same PV" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: advanced + label: "Show Advanced Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: persistenceList + label: "Additional app storage" + group: "Storage and Persistence" + schema: + type: list + default: [] + items: + - variable: persistenceListEntry + label: "Custom Storage" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the storage" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name (optional)" + description: "Not required, please set to config when mounting /config or temp when mounting /tmp" + schema: + type: string + - variable: type + label: "Type of Storage" + description: "Sets the persistence type, Anything other than PVC could break rollback!" + schema: + type: string + default: "simpleHP" + enum: + - value: "simplePVC" + description: "PVC (simple)" + - value: "simpleHP" + description: "HostPath (simple)" + - value: "emptyDir" + description: "emptyDir" + - value: "pvc" + description: "pvc" + - value: "hostPath" + description: "hostPath" + - value: "nfs" + description: "NFS Share" + - variable: server + label: "NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: "Path on NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissionsSimple + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "simpleHP"]] + type: boolean + default: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPathSimple + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: "mountPath" + description: "Path inside the container the storage is mounted" + schema: + type: string + default: "" + required: true + valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$' + - variable: medium + label: "EmptyDir Medium" + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: size + label: "Size quotum of storage" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "999Gi" + - variable: hostPathType + label: "(Advanced) hostPath Type" + schema: + show_if: [["type", "=", "hostPath"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "DirectoryOrCreate" + description: "DirectoryOrCreate" + - value: "Directory" + description: "Directory" + - value: "FileOrCreate" + description: "FileOrCreate" + - value: "File" + description: "File" + - value: "Socket" + description: "Socket" + - value: "CharDevice" + description: "CharDevice" + - value: "BlockDevice" + description: "BlockDevice" + - variable: storageClass + label: "(Advanced) storageClass" + description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "SCALE-ZFS" + - variable: accessMode + label: "(Advanced) Access Mode" + description: "Allow or disallow multiple PVC's writhing to the same PV" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: advanced + label: "Show Advanced Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable Ingress" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: "Hosts" + schema: + type: list + default: [] + items: + - variable: hostEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: "HostName" + schema: + type: string + default: "" + required: true + - variable: paths + label: "Paths" + schema: + type: list + default: [] + items: + - variable: pathEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: "path" + schema: + type: string + required: true + default: "/" + - variable: pathType + label: "pathType" + schema: + type: string + required: true + default: "Prefix" + + - variable: tls + label: "TLS-Settings" + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: "Certificate Hosts" + schema: + type: list + default: [] + items: + - variable: host + label: "Host" + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: "Select TrueNAS SCALE Certificate" + schema: + type: int + $ref: + - "definitions/certificate" + + - variable: entrypoint + label: "(Advanced) Traefik Entrypoint" + description: "Entrypoint used by Traefik when using Traefik as Ingress Provider" + schema: + type: string + default: "websecure" + required: true + - variable: middlewares + label: "Traefik Middlewares" + description: "Add previously created Traefik Middlewares to this Ingress" + schema: + type: list + default: [] + items: + - variable: name + label: "Name" + schema: + type: string + default: "" + required: true + + - variable: expert + label: "Show Expert Configuration Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enableFixedMiddlewares + description: "These middlewares enforce a number of best practices." + label: "Enable Default Middlewares" + schema: + type: boolean + default: true + - variable: ingressClassName + label: "IngressClass Name" + schema: + type: string + default: "" + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: ingressList + label: "Add Manual Custom Ingresses" + group: "Ingress" + schema: + type: list + default: [] + items: + - variable: ingressListEntry + label: "Custom Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable Ingress" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name" + schema: + type: string + default: "" + - variable: ingressClassName + label: "IngressClass Name" + schema: + type: string + default: "" + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: hosts + label: "Hosts" + schema: + type: list + default: [] + items: + - variable: hostEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: "HostName" + schema: + type: string + default: "" + required: true + - variable: paths + label: "Paths" + schema: + type: list + default: [] + items: + - variable: pathEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: "path" + schema: + type: string + required: true + default: "/" + - variable: pathType + label: "pathType" + schema: + type: string + required: true + default: "Prefix" + - variable: service + label: "Linked Service" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Service Name" + schema: + type: string + default: "" + - variable: port + label: "Service Port" + schema: + type: int + - variable: tls + label: "TLS-Settings" + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: "Certificate Hosts" + schema: + type: list + default: [] + items: + - variable: host + label: "Host" + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: "Select TrueNAS SCALE Certificate" + schema: + type: int + $ref: + - "definitions/certificate" + - variable: entrypoint + label: "Traefik Entrypoint" + description: "Entrypoint used by Traefik when using Traefik as Ingress Provider" + schema: + type: string + default: "websecure" + required: true + - variable: middlewares + label: "Traefik Middlewares" + description: "Add previously created Traefik Middlewares to this Ingress" + schema: + type: list + default: [] + items: + - variable: name + label: "Name" + schema: + type: string + default: "" + required: true + - variable: security + label: "Container Security Settings" + group: "Security and Permissions" + schema: + type: dict + additional_attrs: true + attrs: + - variable: editsecurity + label: "Change PUID / UMASK values" + description: "By enabling this you override default set values." + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: PUID + label: "Process User ID - PUID" + description: "When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "When supported by the container, this sets the UMASK for tha App. Not supported by all Apps" + schema: + type: string + default: "002" + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false + - variable: capabilities + label: "Capabilities" + schema: + additional_attrs: true + type: dict + attrs: + - variable: drop + label: "Drop Capability" + schema: + type: list + default: [] + items: + - variable: dropEntry + label: "" + schema: + type: string + - variable: add + label: "Add Capability" + schema: + type: list + default: [] + items: + - variable: addEntry + label: "" + schema: + type: string + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: fsGroupChangePolicy + label: "When should we take ownership?" + schema: + type: string + default: "OnRootMismatch" + enum: + - value: "OnRootMismatch" + description: "OnRootMismatch" + - value: "Always" + description: "Always" + - variable: supplementalGroups + label: "supplemental Groups" + schema: + type: list + default: [] + items: + - variable: supplementalGroupsEntry + label: "supplemental Group" + schema: + type: int + + + - variable: advancedresources + label: "Set Custom Resource Limits/Requests (Advanced)" + group: "Resources and Devices" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: resources + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: "Advanced Limit Resource Consumption" + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: "CPU" + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "4000m" + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "8Gi" + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: requests + label: "Minimum Resources Required (request)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: "CPU" + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "10m" + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "50Mi" + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + + - variable: deviceList + label: "Mount USB devices" + group: "Resources and Devices" + schema: + type: list + default: [] + items: + - variable: deviceListEntry + label: "Device" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the storage" + schema: + type: boolean + default: true + - variable: type + label: "(Advanced) Type of Storage" + description: "Sets the persistence type" + schema: + type: string + default: "hostPath" + hidden: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPath + label: "Host Device Path" + description: "Path to the device on the host system" + schema: + type: path + - variable: mountPath + label: "Container Device Path" + description: "Path inside the container the device is mounted" + schema: + type: string + default: "/dev/ttyACM0" + + # Specify GPU configuration + - variable: scaleGPU + label: "GPU Configuration" + group: "Resources and Devices" + schema: + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + +# - variable: autoscaling +# group: "Advanced" +# label: "(Advanced) Horizontal Pod Autoscaler" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: enabled +# label: "enabled" +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: target +# label: "Target" +# description: "deployment name, defaults to main deployment" +# schema: +# type: string +# default: "" +# - variable: minReplicas +# label: "Minimum Replicas" +# schema: +# type: int +# default: 1 +# - variable: maxReplicas +# label: "Maximum Replicas" +# schema: +# type: int +# default: 5 +# - variable: targetCPUUtilizationPercentage +# label: "Target CPU Utilization Percentage" +# schema: +# type: int +# default: 80 +# - variable: targetMemoryUtilizationPercentage +# label: "Target Memory Utilization Percentage" +# schema: +# type: int +# default: 80 +# - variable: networkPolicy +# group: "Advanced" +# label: "(Advanced) Network Policy" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: enabled +# label: "enabled" +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: policyType +# label: "Policy Type" +# schema: +# type: string +# default: "" +# enum: +# - value: "" +# description: "Default" +# - value: "ingress" +# description: "Ingress" +# - value: "egress" +# description: "Egress" +# - value: "ingress-egress" +# description: "Ingress and Egress" +# - variable: egress +# label: "Egress" +# schema: +# type: list +# default: [] +# items: +# - variable: egressEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: to +# label: "To" +# schema: +# type: list +# default: [] +# items: +# - variable: toEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: ipBlock +# label: "ipBlock" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: cidr +# label: "cidr" +# schema: +# type: string +# default: "" +# - variable: except +# label: "except" +# schema: +# type: list +# default: [] +# items: +# - variable: exceptint +# label: "" +# schema: +# type: string +# - variable: namespaceSelector +# label: "namespaceSelector" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: podSelector +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: ports +# label: "Ports" +# schema: +# type: list +# default: [] +# items: +# - variable: portsEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: port +# label: "port" +# schema: +# type: int +# - variable: endPort +# label: "port" +# schema: +# type: int +# - variable: protocol +# label: "Protocol" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "TCP" +# description: "TCP" +# - value: "UDP" +# description: "UDP" +# - value: "SCTP" +# description: "SCTP" +# - variable: ingress +# label: "Ingress" +# schema: +# type: list +# default: [] +# items: +# - variable: ingressEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: from +# label: "From" +# schema: +# type: list +# default: [] +# items: +# - variable: fromEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: ipBlock +# label: "ipBlock" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: cidr +# label: "cidr" +# schema: +# type: string +# default: "" +# - variable: except +# label: "except" +# schema: +# type: list +# default: [] +# items: +# - variable: exceptint +# label: "" +# schema: +# type: string +# - variable: namespaceSelector +# label: "namespaceSelector" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: podSelector +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: ports +# label: "Ports" +# schema: +# type: list +# default: [] +# items: +# - variable: portsEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: port +# label: "port" +# schema: +# type: int +# - variable: endPort +# label: "port" +# schema: +# type: int +# - variable: protocol +# label: "Protocol" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "TCP" +# description: "TCP" +# - value: "UDP" +# description: "UDP" +# - value: "SCTP" +# description: "SCTP" + + + - variable: addons + group: "Addons" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: vpn + label: "VPN" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Type" + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: "disabled" + - value: "openvpn" + description: "OpenVPN" + - value: "wireguard" + description: "Wireguard" + - variable: openvpn + label: "OpenVPN Settings" + schema: + type: dict + show_if: [["type", "=", "openvpn"]] + attrs: + - variable: username + label: "authentication username" + description: "authentication username, optional" + schema: + type: string + default: "" + - variable: password + label: "authentication password" + description: "authentication credentials" + schema: + type: string + default: "" + required: true + - variable: killSwitch + label: "Enable killswitch" + schema: + type: boolean + show_if: [["type", "!=", "disabled"]] + default: true + - variable: excludedNetworks_IPv4 + label: "Killswitch Excluded IPv4 networks" + description: "list of killswitch excluded ipv4 addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv4 + label: "IPv4 Network" + schema: + type: string + required: true + - variable: excludedNetworks_IPv6 + label: "Killswitch Excluded IPv6 networks" + description: "list of killswitch excluded ipv4 addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv6 + label: "IPv6 Network" + schema: + type: string + required: true + + - variable: configFile + label: "VPN Config File Location" + schema: + type: dict + show_if: [["type", "!=", "disabled"]] + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: true + hidden: true + - variable: type + label: "type" + schema: + type: string + default: "hostPath" + hidden: true + - variable: hostPathType + label: "hostPathType" + schema: + type: string + default: "File" + hidden: true + - variable: noMount + label: "noMount" + schema: + type: boolean + default: true + hidden: true + - variable: hostPath + label: "Full path to file" + description: "path to your local VPN config file for example: /mnt/tank/vpn.conf or /mnt/tank/vpn.ovpn" + schema: + type: string + default: "" + required: true + - variable: envList + label: "VPN environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + - variable: codeserver + label: "Codeserver" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: git + label: "Git Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: deployKey + description: "Raw SSH private key" + label: "deployKey" + schema: + type: string + - variable: deployKeyBase64 + description: "Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence" + label: "deployKeyBase64" + schema: + type: string + - variable: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "NodePort" + enum: + - value: "NodePort" + description: "NodePort" + - value: "ClusterIP" + description: "ClusterIP" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: nodePort + description: "leave empty to disable" + label: "nodePort" + schema: + type: int + default: 36107 + - variable: envList + label: "Codeserver environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + + - variable: promtail + label: "Promtail" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: loki + label: "Loki URL" + schema: + type: string + required: true + - variable: logs + label: "Log Paths" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: path + label: "Path" + schema: + type: string + required: true + - variable: args + label: "Promtail ecommand line arguments" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: arg + label: "Arg" + schema: + type: string + required: true + - variable: envList + label: "Promtail environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + + + + - variable: netshoot + label: "Netshoot" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: envList + label: "Netshoot environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true diff --git a/stable/impostor-server/1.0.25/templates/common.yaml b/stable/heimdall/11.0.25/templates/common.yaml similarity index 100% rename from stable/impostor-server/1.0.25/templates/common.yaml rename to stable/heimdall/11.0.25/templates/common.yaml diff --git a/stable/impostor-server/1.0.25/values.yaml b/stable/heimdall/11.0.25/values.yaml similarity index 100% rename from stable/impostor-server/1.0.25/values.yaml rename to stable/heimdall/11.0.25/values.yaml diff --git a/stable/impostor-server/1.0.25/Chart.lock b/stable/impostor-server/1.0.25/Chart.lock deleted file mode 100644 index 31a9ac714c..0000000000 --- a/stable/impostor-server/1.0.25/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.7 -digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:19:05.118950926Z" diff --git a/stable/impostor-server/1.0.25/CHANGELOG.md b/stable/impostor-server/1.0.26/CHANGELOG.md similarity index 90% rename from stable/impostor-server/1.0.25/CHANGELOG.md rename to stable/impostor-server/1.0.26/CHANGELOG.md index 0ffe15135c..f7f6b945f3 100644 --- a/stable/impostor-server/1.0.25/CHANGELOG.md +++ b/stable/impostor-server/1.0.26/CHANGELOG.md @@ -2,6 +2,15 @@ +## [impostor-server-1.0.26](https://github.com/truecharts/apps/compare/impostor-server-1.0.25...impostor-server-1.0.26) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [impostor-server-1.0.25](https://github.com/truecharts/apps/compare/impostor-server-1.0.24...impostor-server-1.0.25) (2022-07-23) ### Chore @@ -88,12 +97,3 @@ #### Chore * update helm general non-major helm releases ([#3147](https://github.com/truecharts/apps/issues/3147)) - - - - -### [impostor-server-1.0.14](https://github.com/truecharts/apps/compare/impostor-server-1.0.13...impostor-server-1.0.14) (2022-07-11) - -#### Chore - -* move icons into the apps folder ([#3139](https://github.com/truecharts/apps/issues/3139)) diff --git a/stable/impostor-server/1.0.26/Chart.lock b/stable/impostor-server/1.0.26/Chart.lock new file mode 100644 index 0000000000..29f8098fbf --- /dev/null +++ b/stable/impostor-server/1.0.26/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f +generated: "2022-07-25T14:44:01.484577325Z" diff --git a/stable/impostor-server/1.0.25/Chart.yaml b/stable/impostor-server/1.0.26/Chart.yaml similarity index 97% rename from stable/impostor-server/1.0.25/Chart.yaml rename to stable/impostor-server/1.0.26/Chart.yaml index 354c1cb87f..197589689d 100644 --- a/stable/impostor-server/1.0.25/Chart.yaml +++ b/stable/impostor-server/1.0.26/Chart.yaml @@ -19,7 +19,7 @@ name: impostor-server sources: - https://github.com/truecharts/apps/tree/master/incubator/impostor-server type: application -version: 1.0.25 +version: 1.0.26 annotations: truecharts.org/catagories: | - games diff --git a/stable/impostor-server/1.0.25/README.md b/stable/impostor-server/1.0.26/README.md similarity index 98% rename from stable/impostor-server/1.0.25/README.md rename to stable/impostor-server/1.0.26/README.md index 570f3f560a..ab44677859 100644 --- a/stable/impostor-server/1.0.25/README.md +++ b/stable/impostor-server/1.0.26/README.md @@ -1,6 +1,6 @@ # impostor-server -![Version: 1.0.25](https://img.shields.io/badge/Version-1.0.25-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.7.1](https://img.shields.io/badge/AppVersion-1.7.1-informational?style=flat-square) +![Version: 1.0.26](https://img.shields.io/badge/Version-1.0.26-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.7.1](https://img.shields.io/badge/AppVersion-1.7.1-informational?style=flat-square) A private Among Us server diff --git a/stable/impostor-server/1.0.25/app-readme.md b/stable/impostor-server/1.0.26/app-readme.md similarity index 100% rename from stable/impostor-server/1.0.25/app-readme.md rename to stable/impostor-server/1.0.26/app-readme.md diff --git a/stable/littlelink/6.0.38/charts/common-10.4.7.tgz b/stable/impostor-server/1.0.26/charts/common-10.4.7.tgz similarity index 100% rename from stable/littlelink/6.0.38/charts/common-10.4.7.tgz rename to stable/impostor-server/1.0.26/charts/common-10.4.7.tgz diff --git a/stable/impostor-server/1.0.25/ci/base-values.yaml b/stable/impostor-server/1.0.26/ci/base-values.yaml similarity index 100% rename from stable/impostor-server/1.0.25/ci/base-values.yaml rename to stable/impostor-server/1.0.26/ci/base-values.yaml diff --git a/stable/impostor-server/1.0.25/ci/values.yaml b/stable/impostor-server/1.0.26/ci/values.yaml similarity index 50% rename from stable/impostor-server/1.0.25/ci/values.yaml rename to stable/impostor-server/1.0.26/ci/values.yaml index b9e955d268..bca8fe9e02 100644 --- a/stable/impostor-server/1.0.25/ci/values.yaml +++ b/stable/impostor-server/1.0.26/ci/values.yaml @@ -1,4 +1,4 @@ image: repository: tccr.io/truecharts/impostor-server-nightly pullPolicy: IfNotPresent - tag: vnightly@sha256:a9ac4d9322c4616b131197faa5b4ec4eb95526a486976826a5f07af4852f00c9 + tag: vnightly@sha256:2783d83a6d2c23fb2534ec45dcc9f96cb969357aa9f3846faeeea09a82a3a842 diff --git a/stable/impostor-server/1.0.25/ix_values.yaml b/stable/impostor-server/1.0.26/ix_values.yaml similarity index 89% rename from stable/impostor-server/1.0.25/ix_values.yaml rename to stable/impostor-server/1.0.26/ix_values.yaml index 29d45315d9..7aa0e069fd 100644 --- a/stable/impostor-server/1.0.25/ix_values.yaml +++ b/stable/impostor-server/1.0.26/ix_values.yaml @@ -6,7 +6,7 @@ image: nightlyImage: repository: tccr.io/truecharts/impostor-server-nightly pullPolicy: IfNotPresent - tag: vnightly@sha256:a9ac4d9322c4616b131197faa5b4ec4eb95526a486976826a5f07af4852f00c9 + tag: vnightly@sha256:2783d83a6d2c23fb2534ec45dcc9f96cb969357aa9f3846faeeea09a82a3a842 env: IMPOSTOR_Server__PublicIp: "127.0.0.1" diff --git a/stable/impostor-server/1.0.25/questions.yaml b/stable/impostor-server/1.0.26/questions.yaml similarity index 100% rename from stable/impostor-server/1.0.25/questions.yaml rename to stable/impostor-server/1.0.26/questions.yaml diff --git a/stable/matomo/3.0.35/templates/common.yaml b/stable/impostor-server/1.0.26/templates/common.yaml similarity index 100% rename from stable/matomo/3.0.35/templates/common.yaml rename to stable/impostor-server/1.0.26/templates/common.yaml diff --git a/stable/littlelink/6.0.38/values.yaml b/stable/impostor-server/1.0.26/values.yaml similarity index 100% rename from stable/littlelink/6.0.38/values.yaml rename to stable/impostor-server/1.0.26/values.yaml diff --git a/stable/lazylibrarian/11.0.30/CHANGELOG.md b/stable/lazylibrarian/11.0.30/CHANGELOG.md new file mode 100644 index 0000000000..f26fc5064f --- /dev/null +++ b/stable/lazylibrarian/11.0.30/CHANGELOG.md @@ -0,0 +1,99 @@ +# Changelog + + + +## [lazylibrarian-11.0.30](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.29...lazylibrarian-11.0.30) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + +## [lazylibrarian-11.0.29](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.28...lazylibrarian-11.0.29) (2022-07-23) + +### Chore + +- Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) + + + + +## [lazylibrarian-11.0.29](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.28...lazylibrarian-11.0.29) (2022-07-23) + +### Chore + +- Auto-update chart README [skip ci] + - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) + + + + +## [lazylibrarian-11.0.29](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.28...lazylibrarian-11.0.29) (2022-07-23) + +### Chore + +- update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) + + + + +## [lazylibrarian-11.0.28](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.26...lazylibrarian-11.0.28) (2022-07-22) + +### Chore + +- Bump all charts to generate config and container references due to huge increase of repository + - update helm general non-major helm releases ([#3268](https://github.com/truecharts/apps/issues/3268)) + - update docker general non-major ([#3266](https://github.com/truecharts/apps/issues/3266)) + + + +## [lazylibrarian-11.0.26](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.25...lazylibrarian-11.0.26) (2022-07-19) + +### Chore + +- Update Readme and Description on SCALE + + + +## [lazylibrarian-11.0.25](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.24...lazylibrarian-11.0.25) (2022-07-17) + +### Chore + +- update docker general non-major ([#3198](https://github.com/truecharts/apps/issues/3198)) + + + +## [lazylibrarian-11.0.24](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.23...lazylibrarian-11.0.24) (2022-07-14) + +### Fix + +- regenerate catalog and update template + + + +## [lazylibrarian-11.0.23](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.21...lazylibrarian-11.0.23) (2022-07-14) + +### Fix + +- bump to ensure .helmignore is present on all Charts + + + +## [lazylibrarian-11.0.21](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.20...lazylibrarian-11.0.21) (2022-07-13) + +### Fix + +- make root fs writable on several LSIO apps ([#3168](https://github.com/truecharts/apps/issues/3168)) + + + +## [lazylibrarian-11.0.20](https://github.com/truecharts/apps/compare/lazylibrarian-11.0.18...lazylibrarian-11.0.20) (2022-07-12) + +### Chore + +- update icons ([#3156](https://github.com/truecharts/apps/issues/3156)) +- bump to cleanup old docs and use correct icon urls diff --git a/stable/lazylibrarian/11.0.30/Chart.lock b/stable/lazylibrarian/11.0.30/Chart.lock new file mode 100644 index 0000000000..fa80f96d82 --- /dev/null +++ b/stable/lazylibrarian/11.0.30/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f +generated: "2022-07-25T14:44:11.371692535Z" diff --git a/stable/lazylibrarian/11.0.30/Chart.yaml b/stable/lazylibrarian/11.0.30/Chart.yaml new file mode 100644 index 0000000000..7d0143f655 --- /dev/null +++ b/stable/lazylibrarian/11.0.30/Chart.yaml @@ -0,0 +1,29 @@ +apiVersion: v2 +appVersion: "latest" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +deprecated: false +description: Get all your books, like series with Sonarr... +home: https://github.com/truecharts/apps/tree/master/charts/stable/lazylibrarian +icon: https://truecharts.org/img/chart-icons/lazylibrarian.png +keywords: + - lazylibrarian + - ebooks +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: lazylibrarian +sources: + - https://gitlab.com/LazyLibrarian/LazyLibrarian.git + - https://lazylibrarian.gitlab.io +type: application +version: 11.0.30 +annotations: + truecharts.org/catagories: | + - media + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/stable/lazylibrarian/11.0.30/README.md b/stable/lazylibrarian/11.0.30/README.md new file mode 100644 index 0000000000..e26003d09f --- /dev/null +++ b/stable/lazylibrarian/11.0.30/README.md @@ -0,0 +1,108 @@ +# lazylibrarian + +![Version: 11.0.30](https://img.shields.io/badge/Version-11.0.30-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square) + +Get all your books, like series with Sonarr... + +TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE. + +This readme is just an automatically generated general guide on installing our Helm Charts and Apps. +For more information, please click here: [lazylibrarian](https://truecharts.org/docs/charts/stable/lazylibrarian) + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** + +## Source Code + +* +* + +## Requirements + +Kubernetes: `>=1.16.0-0` + +## Dependencies + +| Repository | Name | Version | +|------------|------|---------| +| https://library-charts.truecharts.org | common | 10.4.7 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this App on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/Quick-Start%20Guides/02-Installing-an-App/). + +### Helm + +To install the chart with the release name `lazylibrarian` + +```console +helm repo add TrueCharts https://helm.truecharts.org +helm repo update +helm install lazylibrarian TrueCharts/lazylibrarian +``` + +## Uninstall + +### TrueNAS SCALE + +**Upgrading, Rolling Back and Uninstalling the Chart** + +To upgrade, rollback or delete this App from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/Quick-Start%20Guides/04-Upgrade-rollback-delete-an-App/). + +### Helm + +To uninstall the `lazylibrarian` deployment + +```console +helm uninstall lazylibrarian +``` + +## Configuration + +### Helm + +#### Available Settings + +Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values. +Other values may be used from the [values.yaml](https://github.com/truecharts/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common). + +#### Configure using the Commandline + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install lazylibrarian \ + --set env.TZ="America/New York" \ + TrueCharts/lazylibrarian +``` + +#### Configure using a yaml file + +Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. + +```console +helm install lazylibrarian TrueCharts/lazylibrarian -f values.yaml +``` + +#### Connecting to other apps + +If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our [Linking Apps Internally](https://truecharts.org/docs/manual/Quick-Start%20Guides/06-linking-apps/) quick-start guide. + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Important-MUST-READ). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/apps/issues/new/choose) + +--- + +## Sponsor TrueCharts + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! + +--- + +All Rights Reserved - The TrueCharts Project diff --git a/stable/lazylibrarian/11.0.30/app-readme.md b/stable/lazylibrarian/11.0.30/app-readme.md new file mode 100644 index 0000000000..df37ceef8b --- /dev/null +++ b/stable/lazylibrarian/11.0.30/app-readme.md @@ -0,0 +1,8 @@ +Get all your books, like series with Sonarr... + +This App is supplied by TrueCharts, for more information visit the manual: https://truecharts.org/charts/stable/lazylibrarian + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! diff --git a/stable/matomo/3.0.35/charts/common-10.4.7.tgz b/stable/lazylibrarian/11.0.30/charts/common-10.4.7.tgz similarity index 100% rename from stable/matomo/3.0.35/charts/common-10.4.7.tgz rename to stable/lazylibrarian/11.0.30/charts/common-10.4.7.tgz diff --git a/stable/lazylibrarian/11.0.30/ix_values.yaml b/stable/lazylibrarian/11.0.30/ix_values.yaml new file mode 100644 index 0000000000..cc74062150 --- /dev/null +++ b/stable/lazylibrarian/11.0.30/ix_values.yaml @@ -0,0 +1,26 @@ +image: + repository: tccr.io/truecharts/lazylibrarian + pullPolicy: IfNotPresent + tag: latest@sha256:ddc9ec4ab5a7fda6387146620927f414f988b820f26c734ea8295b8ffdccc9ac + +securityContext: + runAsNonRoot: false + readOnlyRootFilesystem: false + +podSecurityContext: + runAsUser: 0 + runAsGroup: 0 + +service: + main: + ports: + main: + port: 5299 + targetPort: 5299 + +persistence: + config: + enabled: true + mountPath: "/config" + varrun: + enabled: true diff --git a/stable/lazylibrarian/11.0.30/questions.yaml b/stable/lazylibrarian/11.0.30/questions.yaml new file mode 100644 index 0000000000..79aa37861e --- /dev/null +++ b/stable/lazylibrarian/11.0.30/questions.yaml @@ -0,0 +1,2431 @@ +groups: + - name: "Container Image" + description: "Image to be used for container" + - name: "Controller" + description: "Configure workload deployment" + - name: "Container Configuration" + description: "additional container configuration" + - name: "App Configuration" + description: "App specific config options" + - name: "Networking and Services" + description: "Configure Network and Services for container" + - name: "Storage and Persistence" + description: "Persist and share data that is separate from the container" + - name: "Ingress" + description: "Ingress Configuration" + - name: "Security and Permissions" + description: "Configure security context and permissions" + - name: "Resources and Devices" + description: "Specify resources/devices to be allocated to workload" + - name: "Middlewares" + description: "Traefik Middlewares" + - name: "Metrics" + description: "Metrics" + - name: "Addons" + description: "Addon Configuration" + - name: "Advanced" + description: "Advanced Configuration" +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true + - variable: global + label: "global settings" + group: "Controller" + schema: + type: dict + hidden: true + attrs: + - variable: isSCALE + label: "flag this is SCALE" + schema: + type: boolean + default: true + hidden: true + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" + - variable: expert + label: "Show Expert Configuration Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: extraArgs + label: "Extra Args" + schema: + type: list + default: [] + items: + - variable: arg + label: "arg" + schema: + type: string + - variable: labelsList + label: "Controller Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: " Controller Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: TZ + label: "Timezone" + group: "Container Configuration" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + + - variable: envList + label: "Image environment" + group: "Container Configuration" + schema: + type: list + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: expertpodconf + group: "Container Configuration" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: tty + label: "Enable TTY" + description: "Determines whether containers in a pod runs with TTY enabled. By default pod has it disabled." + group: "Workload Details" + schema: + type: boolean + default: false + - variable: stdin + label: "Enable STDIN" + description: "Determines whether containers in a pod runs with stdin enabled. By default pod has it disabled." + group: "Workload Details" + schema: + type: boolean + default: false + - variable: termination + group: "Container Configuration" + label: "Termination settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: gracePeriodSeconds + label: "Grace Period Seconds" + schema: + type: int + default: 10 + - variable: podLabelsList + group: "Container Configuration" + label: "Pod Labels" + schema: + type: list + default: [] + items: + - variable: podLabelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: podAnnotationsList + group: "Container Configuration" + label: "Pod Annotations" + schema: + type: list + default: [] + items: + - variable: podAnnotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the service" + schema: + type: boolean + default: true + hidden: true + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "Simple" + enum: + - value: "Simple" + description: "Simple" + - value: "ClusterIP" + description: "ClusterIP" + - value: "NodePort" + description: "NodePort (Advanced)" + - value: "LoadBalancer" + description: "LoadBalancer (Advanced)" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: ipFamilyPolicy + label: "IP Family Policy" + description: "(Advanced) Specify the ip policy" + schema: + show_if: [["type", "!=", "Simple"]] + type: string + default: "SingleStack" + enum: + - value: "SingleStack" + description: "SingleStack" + - value: "PreferDualStack" + description: "PreferDualStack" + - value: "RequireDualStack" + description: "RequireDualStack" + - variable: ipFamilies + label: "(advanced) IP families" + description: "(advanced) The ip families that should be used" + schema: + show_if: [["type", "!=", "Simple"]] + type: list + default: [] + items: + - variable: ipFamily + label: "IP family" + schema: + type: string + - variable: ports + label: "Service's Port(s) Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5299 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 5299 + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + + - variable: externalInterfaces + description: "Add External Interfaces" + label: "Add external Interfaces" + group: "Networking" + schema: + type: list + items: + - variable: interfaceConfiguration + description: "Interface Configuration" + label: "Interface Configuration" + schema: + type: dict + $ref: + - "normalize/interfaceConfiguration" + attrs: + - variable: hostInterface + description: "Please specify host interface" + label: "Host Interface" + schema: + type: string + required: true + $ref: + - "definitions/interface" + - variable: ipam + description: "Define how IP Address will be managed" + label: "IP Address Management" + schema: + type: dict + required: true + attrs: + - variable: type + description: "Specify type for IPAM" + label: "IPAM Type" + schema: + type: string + required: true + enum: + - value: "dhcp" + description: "Use DHCP" + - value: "static" + description: "Use static IP" + show_subquestions_if: "static" + subquestions: + - variable: staticIPConfigurations + label: "Static IP Addresses" + schema: + type: list + items: + - variable: staticIP + label: "Static IP" + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: "Static Routes" + schema: + type: list + items: + - variable: staticRouteConfiguration + label: "Static Route Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: destination + label: "Destination" + schema: + type: ipaddr + cidr: true + required: true + - variable: gateway + label: "Gateway" + schema: + type: ipaddr + cidr: false + required: true + + - variable: dnsPolicy + group: "Networking and Services" + label: "dnsPolicy" + schema: + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "ClusterFirst" + description: "ClusterFirst" + - value: "ClusterFirstWithHostNet" + description: "ClusterFirstWithHostNet" + - value: "None" + description: "None" + + - variable: dnsConfig + label: "DNS Configuration" + group: "Networking and Services" + description: "Specify custom DNS configuration which will be applied to the pod" + schema: + additional_attrs: true + type: dict + attrs: + - variable: nameservers + label: "Nameservers" + schema: + default: [] + type: list + items: + - variable: nameserver + label: "Nameserver" + schema: + type: string + - variable: options + label: "options" + schema: + default: [] + type: list + items: + - variable: option + label: "Option Entry" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: searches + label: "Searches" + schema: + default: [] + type: list + items: + - variable: search + label: "Search Entry" + schema: + type: string + + - variable: serviceList + label: "Add Manual Custom Services" + group: "Networking and Services" + schema: + type: list + default: [] + items: + - variable: serviceListEntry + label: "Custom Service" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the service" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name" + schema: + type: string + default: "" + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "Simple" + enum: + - value: "Simple" + description: "Simple" + - value: "NodePort" + description: "NodePort" + - value: "ClusterIP" + description: "ClusterIP" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: portsList + label: "Additional Service Ports" + schema: + type: list + default: [] + items: + - variable: portsListEntry + label: "Custom ports" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Port Name" + schema: + type: string + default: "" + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: targetPort + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + required: true + - variable: port + label: "Container Port" + schema: + type: int + required: true + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort" + schema: + type: int + min: 9000 + max: 65535 + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + - variable: config + label: "App Config Storage" + description: "Stores the Application Configuration." + schema: + additional_attrs: true + type: dict + attrs: + + - variable: type + label: "Type of Storage" + description: "Sets the persistence type, Anything other than PVC could break rollback!" + schema: + type: string + default: "simplePVC" + enum: + - value: "simplePVC" + description: "PVC (simple)" + - value: "simpleHP" + description: "HostPath (simple)" + - value: "emptyDir" + description: "emptyDir" + - value: "pvc" + description: "pvc" + - value: "hostPath" + description: "hostPath" + - value: "nfs" + description: "NFS Share" + - variable: server + label: "NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: "Path on NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissionsSimple + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "simpleHP"]] + type: boolean + default: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPathSimple + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: medium + label: "EmptyDir Medium" + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: size + label: "Size quotum of storage" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "999Gi" + - variable: hostPathType + label: "(Advanced) hostPath Type" + schema: + show_if: [["type", "=", "hostPath"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "DirectoryOrCreate" + description: "DirectoryOrCreate" + - value: "Directory" + description: "Directory" + - value: "FileOrCreate" + description: "FileOrCreate" + - value: "File" + description: "File" + - value: "Socket" + description: "Socket" + - value: "CharDevice" + description: "CharDevice" + - value: "BlockDevice" + description: "BlockDevice" + - variable: storageClass + label: "(Advanced) storageClass" + description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "SCALE-ZFS" + - variable: accessMode + label: "(Advanced) Access Mode" + description: "Allow or disallow multiple PVC's writhing to the same PV" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: advanced + label: "Show Advanced Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: persistenceList + label: "Additional app storage" + group: "Storage and Persistence" + schema: + type: list + default: [] + items: + - variable: persistenceListEntry + label: "Custom Storage" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the storage" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name (optional)" + description: "Not required, please set to config when mounting /config or temp when mounting /tmp" + schema: + type: string + - variable: type + label: "Type of Storage" + description: "Sets the persistence type, Anything other than PVC could break rollback!" + schema: + type: string + default: "simpleHP" + enum: + - value: "simplePVC" + description: "PVC (simple)" + - value: "simpleHP" + description: "HostPath (simple)" + - value: "emptyDir" + description: "emptyDir" + - value: "pvc" + description: "pvc" + - value: "hostPath" + description: "hostPath" + - value: "nfs" + description: "NFS Share" + - variable: server + label: "NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: "Path on NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissionsSimple + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "simpleHP"]] + type: boolean + default: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPathSimple + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: "mountPath" + description: "Path inside the container the storage is mounted" + schema: + type: string + default: "" + required: true + valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$' + - variable: medium + label: "EmptyDir Medium" + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: size + label: "Size quotum of storage" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "999Gi" + - variable: hostPathType + label: "(Advanced) hostPath Type" + schema: + show_if: [["type", "=", "hostPath"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "DirectoryOrCreate" + description: "DirectoryOrCreate" + - value: "Directory" + description: "Directory" + - value: "FileOrCreate" + description: "FileOrCreate" + - value: "File" + description: "File" + - value: "Socket" + description: "Socket" + - value: "CharDevice" + description: "CharDevice" + - value: "BlockDevice" + description: "BlockDevice" + - variable: storageClass + label: "(Advanced) storageClass" + description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "SCALE-ZFS" + - variable: accessMode + label: "(Advanced) Access Mode" + description: "Allow or disallow multiple PVC's writhing to the same PV" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: advanced + label: "Show Advanced Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable Ingress" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: "Hosts" + schema: + type: list + default: [] + items: + - variable: hostEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: "HostName" + schema: + type: string + default: "" + required: true + - variable: paths + label: "Paths" + schema: + type: list + default: [] + items: + - variable: pathEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: "path" + schema: + type: string + required: true + default: "/" + - variable: pathType + label: "pathType" + schema: + type: string + required: true + default: "Prefix" + + - variable: tls + label: "TLS-Settings" + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: "Certificate Hosts" + schema: + type: list + default: [] + items: + - variable: host + label: "Host" + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: "Select TrueNAS SCALE Certificate" + schema: + type: int + $ref: + - "definitions/certificate" + + - variable: entrypoint + label: "(Advanced) Traefik Entrypoint" + description: "Entrypoint used by Traefik when using Traefik as Ingress Provider" + schema: + type: string + default: "websecure" + required: true + - variable: middlewares + label: "Traefik Middlewares" + description: "Add previously created Traefik Middlewares to this Ingress" + schema: + type: list + default: [] + items: + - variable: name + label: "Name" + schema: + type: string + default: "" + required: true + + - variable: expert + label: "Show Expert Configuration Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enableFixedMiddlewares + description: "These middlewares enforce a number of best practices." + label: "Enable Default Middlewares" + schema: + type: boolean + default: true + - variable: ingressClassName + label: "IngressClass Name" + schema: + type: string + default: "" + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: ingressList + label: "Add Manual Custom Ingresses" + group: "Ingress" + schema: + type: list + default: [] + items: + - variable: ingressListEntry + label: "Custom Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable Ingress" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name" + schema: + type: string + default: "" + - variable: ingressClassName + label: "IngressClass Name" + schema: + type: string + default: "" + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: hosts + label: "Hosts" + schema: + type: list + default: [] + items: + - variable: hostEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: "HostName" + schema: + type: string + default: "" + required: true + - variable: paths + label: "Paths" + schema: + type: list + default: [] + items: + - variable: pathEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: "path" + schema: + type: string + required: true + default: "/" + - variable: pathType + label: "pathType" + schema: + type: string + required: true + default: "Prefix" + - variable: service + label: "Linked Service" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Service Name" + schema: + type: string + default: "" + - variable: port + label: "Service Port" + schema: + type: int + - variable: tls + label: "TLS-Settings" + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: "Certificate Hosts" + schema: + type: list + default: [] + items: + - variable: host + label: "Host" + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: "Select TrueNAS SCALE Certificate" + schema: + type: int + $ref: + - "definitions/certificate" + - variable: entrypoint + label: "Traefik Entrypoint" + description: "Entrypoint used by Traefik when using Traefik as Ingress Provider" + schema: + type: string + default: "websecure" + required: true + - variable: middlewares + label: "Traefik Middlewares" + description: "Add previously created Traefik Middlewares to this Ingress" + schema: + type: list + default: [] + items: + - variable: name + label: "Name" + schema: + type: string + default: "" + required: true + - variable: security + label: "Container Security Settings" + group: "Security and Permissions" + schema: + type: dict + additional_attrs: true + attrs: + - variable: editsecurity + label: "Change PUID / UMASK values" + description: "By enabling this you override default set values." + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: PUID + label: "Process User ID - PUID" + description: "When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "When supported by the container, this sets the UMASK for tha App. Not supported by all Apps" + schema: + type: string + default: "002" + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false + - variable: capabilities + label: "Capabilities" + schema: + additional_attrs: true + type: dict + attrs: + - variable: drop + label: "Drop Capability" + schema: + type: list + default: [] + items: + - variable: dropEntry + label: "" + schema: + type: string + - variable: add + label: "Add Capability" + schema: + type: list + default: [] + items: + - variable: addEntry + label: "" + schema: + type: string + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: fsGroupChangePolicy + label: "When should we take ownership?" + schema: + type: string + default: "OnRootMismatch" + enum: + - value: "OnRootMismatch" + description: "OnRootMismatch" + - value: "Always" + description: "Always" + - variable: supplementalGroups + label: "supplemental Groups" + schema: + type: list + default: [] + items: + - variable: supplementalGroupsEntry + label: "supplemental Group" + schema: + type: int + + + - variable: advancedresources + label: "Set Custom Resource Limits/Requests (Advanced)" + group: "Resources and Devices" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: resources + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: "Advanced Limit Resource Consumption" + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: "CPU" + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "4000m" + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "8Gi" + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: requests + label: "Minimum Resources Required (request)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: "CPU" + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "10m" + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "50Mi" + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + + - variable: deviceList + label: "Mount USB devices" + group: "Resources and Devices" + schema: + type: list + default: [] + items: + - variable: deviceListEntry + label: "Device" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the storage" + schema: + type: boolean + default: true + - variable: type + label: "(Advanced) Type of Storage" + description: "Sets the persistence type" + schema: + type: string + default: "hostPath" + hidden: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPath + label: "Host Device Path" + description: "Path to the device on the host system" + schema: + type: path + - variable: mountPath + label: "Container Device Path" + description: "Path inside the container the device is mounted" + schema: + type: string + default: "/dev/ttyACM0" + + # Specify GPU configuration + - variable: scaleGPU + label: "GPU Configuration" + group: "Resources and Devices" + schema: + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + +# - variable: autoscaling +# group: "Advanced" +# label: "(Advanced) Horizontal Pod Autoscaler" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: enabled +# label: "enabled" +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: target +# label: "Target" +# description: "deployment name, defaults to main deployment" +# schema: +# type: string +# default: "" +# - variable: minReplicas +# label: "Minimum Replicas" +# schema: +# type: int +# default: 1 +# - variable: maxReplicas +# label: "Maximum Replicas" +# schema: +# type: int +# default: 5 +# - variable: targetCPUUtilizationPercentage +# label: "Target CPU Utilization Percentage" +# schema: +# type: int +# default: 80 +# - variable: targetMemoryUtilizationPercentage +# label: "Target Memory Utilization Percentage" +# schema: +# type: int +# default: 80 +# - variable: networkPolicy +# group: "Advanced" +# label: "(Advanced) Network Policy" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: enabled +# label: "enabled" +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: policyType +# label: "Policy Type" +# schema: +# type: string +# default: "" +# enum: +# - value: "" +# description: "Default" +# - value: "ingress" +# description: "Ingress" +# - value: "egress" +# description: "Egress" +# - value: "ingress-egress" +# description: "Ingress and Egress" +# - variable: egress +# label: "Egress" +# schema: +# type: list +# default: [] +# items: +# - variable: egressEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: to +# label: "To" +# schema: +# type: list +# default: [] +# items: +# - variable: toEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: ipBlock +# label: "ipBlock" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: cidr +# label: "cidr" +# schema: +# type: string +# default: "" +# - variable: except +# label: "except" +# schema: +# type: list +# default: [] +# items: +# - variable: exceptint +# label: "" +# schema: +# type: string +# - variable: namespaceSelector +# label: "namespaceSelector" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: podSelector +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: ports +# label: "Ports" +# schema: +# type: list +# default: [] +# items: +# - variable: portsEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: port +# label: "port" +# schema: +# type: int +# - variable: endPort +# label: "port" +# schema: +# type: int +# - variable: protocol +# label: "Protocol" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "TCP" +# description: "TCP" +# - value: "UDP" +# description: "UDP" +# - value: "SCTP" +# description: "SCTP" +# - variable: ingress +# label: "Ingress" +# schema: +# type: list +# default: [] +# items: +# - variable: ingressEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: from +# label: "From" +# schema: +# type: list +# default: [] +# items: +# - variable: fromEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: ipBlock +# label: "ipBlock" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: cidr +# label: "cidr" +# schema: +# type: string +# default: "" +# - variable: except +# label: "except" +# schema: +# type: list +# default: [] +# items: +# - variable: exceptint +# label: "" +# schema: +# type: string +# - variable: namespaceSelector +# label: "namespaceSelector" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: podSelector +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: ports +# label: "Ports" +# schema: +# type: list +# default: [] +# items: +# - variable: portsEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: port +# label: "port" +# schema: +# type: int +# - variable: endPort +# label: "port" +# schema: +# type: int +# - variable: protocol +# label: "Protocol" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "TCP" +# description: "TCP" +# - value: "UDP" +# description: "UDP" +# - value: "SCTP" +# description: "SCTP" + + + - variable: addons + group: "Addons" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: vpn + label: "VPN" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Type" + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: "disabled" + - value: "openvpn" + description: "OpenVPN" + - value: "wireguard" + description: "Wireguard" + - variable: openvpn + label: "OpenVPN Settings" + schema: + type: dict + show_if: [["type", "=", "openvpn"]] + attrs: + - variable: username + label: "authentication username" + description: "authentication username, optional" + schema: + type: string + default: "" + - variable: password + label: "authentication password" + description: "authentication credentials" + schema: + type: string + default: "" + required: true + - variable: killSwitch + label: "Enable killswitch" + schema: + type: boolean + show_if: [["type", "!=", "disabled"]] + default: true + - variable: excludedNetworks_IPv4 + label: "Killswitch Excluded IPv4 networks" + description: "list of killswitch excluded ipv4 addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv4 + label: "IPv4 Network" + schema: + type: string + required: true + - variable: excludedNetworks_IPv6 + label: "Killswitch Excluded IPv6 networks" + description: "list of killswitch excluded ipv4 addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv6 + label: "IPv6 Network" + schema: + type: string + required: true + + - variable: configFile + label: "VPN Config File Location" + schema: + type: dict + show_if: [["type", "!=", "disabled"]] + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: true + hidden: true + - variable: type + label: "type" + schema: + type: string + default: "hostPath" + hidden: true + - variable: hostPathType + label: "hostPathType" + schema: + type: string + default: "File" + hidden: true + - variable: noMount + label: "noMount" + schema: + type: boolean + default: true + hidden: true + - variable: hostPath + label: "Full path to file" + description: "path to your local VPN config file for example: /mnt/tank/vpn.conf or /mnt/tank/vpn.ovpn" + schema: + type: string + default: "" + required: true + - variable: envList + label: "VPN environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + - variable: codeserver + label: "Codeserver" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: git + label: "Git Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: deployKey + description: "Raw SSH private key" + label: "deployKey" + schema: + type: string + - variable: deployKeyBase64 + description: "Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence" + label: "deployKeyBase64" + schema: + type: string + - variable: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "NodePort" + enum: + - value: "NodePort" + description: "NodePort" + - value: "ClusterIP" + description: "ClusterIP" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: nodePort + description: "leave empty to disable" + label: "nodePort" + schema: + type: int + default: 36107 + - variable: envList + label: "Codeserver environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + + - variable: promtail + label: "Promtail" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: loki + label: "Loki URL" + schema: + type: string + required: true + - variable: logs + label: "Log Paths" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: path + label: "Path" + schema: + type: string + required: true + - variable: args + label: "Promtail ecommand line arguments" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: arg + label: "Arg" + schema: + type: string + required: true + - variable: envList + label: "Promtail environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + + + + - variable: netshoot + label: "Netshoot" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: envList + label: "Netshoot environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true diff --git a/stable/minecraft-java/1.0.31/templates/common.yaml b/stable/lazylibrarian/11.0.30/templates/common.yaml similarity index 100% rename from stable/minecraft-java/1.0.31/templates/common.yaml rename to stable/lazylibrarian/11.0.30/templates/common.yaml diff --git a/stable/matomo/3.0.35/values.yaml b/stable/lazylibrarian/11.0.30/values.yaml similarity index 100% rename from stable/matomo/3.0.35/values.yaml rename to stable/lazylibrarian/11.0.30/values.yaml diff --git a/stable/littlelink/6.0.38/Chart.lock b/stable/littlelink/6.0.38/Chart.lock deleted file mode 100644 index 22913348e9..0000000000 --- a/stable/littlelink/6.0.38/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.7 -digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:22:13.695531344Z" diff --git a/stable/littlelink/6.0.38/CHANGELOG.md b/stable/littlelink/6.0.39/CHANGELOG.md similarity index 92% rename from stable/littlelink/6.0.38/CHANGELOG.md rename to stable/littlelink/6.0.39/CHANGELOG.md index 2bdbaf9a57..d120f6cfaa 100644 --- a/stable/littlelink/6.0.38/CHANGELOG.md +++ b/stable/littlelink/6.0.39/CHANGELOG.md @@ -2,6 +2,15 @@ +## [littlelink-6.0.39](https://github.com/truecharts/apps/compare/littlelink-6.0.38...littlelink-6.0.39) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [littlelink-6.0.38](https://github.com/truecharts/apps/compare/littlelink-6.0.36...littlelink-6.0.38) (2022-07-24) ### Chore @@ -88,12 +97,3 @@ ### Chore - update icons ([#3156](https://github.com/truecharts/apps/issues/3156)) -- bump to cleanup old docs and use correct icon urls - - - -## [littlelink-6.0.26](https://github.com/truecharts/apps/compare/littlelink-6.0.25...littlelink-6.0.26) (2022-07-12) - -### Chore - -- bump to regenerate documentation diff --git a/stable/littlelink/6.0.39/Chart.lock b/stable/littlelink/6.0.39/Chart.lock new file mode 100644 index 0000000000..32ed12730d --- /dev/null +++ b/stable/littlelink/6.0.39/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f +generated: "2022-07-25T14:44:11.597955967Z" diff --git a/stable/littlelink/6.0.38/Chart.yaml b/stable/littlelink/6.0.39/Chart.yaml similarity index 97% rename from stable/littlelink/6.0.38/Chart.yaml rename to stable/littlelink/6.0.39/Chart.yaml index ea1d474688..481100d7ef 100644 --- a/stable/littlelink/6.0.38/Chart.yaml +++ b/stable/littlelink/6.0.39/Chart.yaml @@ -20,7 +20,7 @@ sources: - https://github.com/techno-tim/littlelink-server - https://github.com/sethcottle/littlelink type: application -version: 6.0.38 +version: 6.0.39 annotations: truecharts.org/catagories: | - social diff --git a/stable/littlelink/6.0.38/README.md b/stable/littlelink/6.0.39/README.md similarity index 98% rename from stable/littlelink/6.0.38/README.md rename to stable/littlelink/6.0.39/README.md index d42503e03b..e562ea4304 100644 --- a/stable/littlelink/6.0.38/README.md +++ b/stable/littlelink/6.0.39/README.md @@ -1,6 +1,6 @@ # littlelink -![Version: 6.0.38](https://img.shields.io/badge/Version-6.0.38-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square) +![Version: 6.0.39](https://img.shields.io/badge/Version-6.0.39-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square) Easy platform to combine all your social links diff --git a/stable/littlelink/6.0.38/app-readme.md b/stable/littlelink/6.0.39/app-readme.md similarity index 100% rename from stable/littlelink/6.0.38/app-readme.md rename to stable/littlelink/6.0.39/app-readme.md diff --git a/stable/medusa/3.0.26/charts/common-10.4.7.tgz b/stable/littlelink/6.0.39/charts/common-10.4.7.tgz similarity index 100% rename from stable/medusa/3.0.26/charts/common-10.4.7.tgz rename to stable/littlelink/6.0.39/charts/common-10.4.7.tgz diff --git a/stable/littlelink/6.0.38/ix_values.yaml b/stable/littlelink/6.0.39/ix_values.yaml similarity index 93% rename from stable/littlelink/6.0.38/ix_values.yaml rename to stable/littlelink/6.0.39/ix_values.yaml index b2f262418b..61a15b9d90 100644 --- a/stable/littlelink/6.0.38/ix_values.yaml +++ b/stable/littlelink/6.0.39/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/littlelink-server pullPolicy: IfNotPresent - tag: latest@sha256:115a33e4a6ed87a7e4f4270de84321b251ffbe6e0fb1b95d3b74a51a4e185598 + tag: latest@sha256:d4d8d776235a1fc40e5fafe8b54310a23ad8ff5457842ccf83879f3efca65c3f service: main: diff --git a/stable/littlelink/6.0.38/questions.yaml b/stable/littlelink/6.0.39/questions.yaml similarity index 100% rename from stable/littlelink/6.0.38/questions.yaml rename to stable/littlelink/6.0.39/questions.yaml diff --git a/stable/littlelink/6.0.38/templates/_configmap.tpl b/stable/littlelink/6.0.39/templates/_configmap.tpl similarity index 100% rename from stable/littlelink/6.0.38/templates/_configmap.tpl rename to stable/littlelink/6.0.39/templates/_configmap.tpl diff --git a/stable/littlelink/6.0.38/templates/common.yaml b/stable/littlelink/6.0.39/templates/common.yaml similarity index 100% rename from stable/littlelink/6.0.38/templates/common.yaml rename to stable/littlelink/6.0.39/templates/common.yaml diff --git a/stable/medusa/3.0.26/values.yaml b/stable/littlelink/6.0.39/values.yaml similarity index 100% rename from stable/medusa/3.0.26/values.yaml rename to stable/littlelink/6.0.39/values.yaml diff --git a/stable/matomo/3.0.35/CHANGELOG.md b/stable/matomo/3.0.36/CHANGELOG.md similarity index 91% rename from stable/matomo/3.0.35/CHANGELOG.md rename to stable/matomo/3.0.36/CHANGELOG.md index ebe0dd248b..00fd2f6a0d 100644 --- a/stable/matomo/3.0.35/CHANGELOG.md +++ b/stable/matomo/3.0.36/CHANGELOG.md @@ -2,6 +2,15 @@ +## [matomo-3.0.36](https://github.com/truecharts/apps/compare/matomo-3.0.35...matomo-3.0.36) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [matomo-3.0.35](https://github.com/truecharts/apps/compare/matomo-3.0.34...matomo-3.0.35) (2022-07-23) ### Chore @@ -88,12 +97,3 @@ ### Fix - bump to ensure .helmignore is present on all Charts - - - -## [matomo-3.0.25](https://github.com/truecharts/apps/compare/matomo-3.0.23...matomo-3.0.25) (2022-07-12) - -### Chore - -- update icons ([#3156](https://github.com/truecharts/apps/issues/3156)) -- bump to cleanup old docs and use correct icon urls diff --git a/stable/matomo/3.0.35/Chart.lock b/stable/matomo/3.0.36/Chart.lock similarity index 85% rename from stable/matomo/3.0.35/Chart.lock rename to stable/matomo/3.0.36/Chart.lock index e36c13e38d..713ac8028c 100644 --- a/stable/matomo/3.0.35/Chart.lock +++ b/stable/matomo/3.0.36/Chart.lock @@ -6,4 +6,4 @@ dependencies: repository: https://charts.truecharts.org/ version: 3.0.43 digest: sha256:0a34c19061d44fac55563d7470e8feff79865777f9f4d1dd59d48a1a62784b85 -generated: "2022-07-24T09:22:56.089523887Z" +generated: "2022-07-25T14:44:19.426929554Z" diff --git a/stable/matomo/3.0.35/Chart.yaml b/stable/matomo/3.0.36/Chart.yaml similarity index 98% rename from stable/matomo/3.0.35/Chart.yaml rename to stable/matomo/3.0.36/Chart.yaml index 48a7ffd312..d083a5eb3d 100644 --- a/stable/matomo/3.0.35/Chart.yaml +++ b/stable/matomo/3.0.36/Chart.yaml @@ -23,7 +23,7 @@ sources: - https://hub.docker.com/r/bitnami/matomo - https://github.com/bitnami/bitnami-docker-matomo - https://github.com/matomo-org/matomo -version: 3.0.35 +version: 3.0.36 annotations: truecharts.org/catagories: | - productivity diff --git a/stable/matomo/3.0.35/README.md b/stable/matomo/3.0.36/README.md similarity index 98% rename from stable/matomo/3.0.35/README.md rename to stable/matomo/3.0.36/README.md index 05efd07e39..4079dfa613 100644 --- a/stable/matomo/3.0.35/README.md +++ b/stable/matomo/3.0.36/README.md @@ -1,6 +1,6 @@ # matomo -![Version: 3.0.35](https://img.shields.io/badge/Version-3.0.35-informational?style=flat-square) ![AppVersion: 4.10.1](https://img.shields.io/badge/AppVersion-4.10.1-informational?style=flat-square) +![Version: 3.0.36](https://img.shields.io/badge/Version-3.0.36-informational?style=flat-square) ![AppVersion: 4.10.1](https://img.shields.io/badge/AppVersion-4.10.1-informational?style=flat-square) Matomo is the leading Free/Libre open analytics platform diff --git a/stable/matomo/3.0.35/app-readme.md b/stable/matomo/3.0.36/app-readme.md similarity index 100% rename from stable/matomo/3.0.35/app-readme.md rename to stable/matomo/3.0.36/app-readme.md diff --git a/stable/minecraft-java/1.0.31/charts/common-10.4.7.tgz b/stable/matomo/3.0.36/charts/common-10.4.7.tgz similarity index 100% rename from stable/minecraft-java/1.0.31/charts/common-10.4.7.tgz rename to stable/matomo/3.0.36/charts/common-10.4.7.tgz diff --git a/stable/matomo/3.0.35/charts/mariadb-3.0.43.tgz b/stable/matomo/3.0.36/charts/mariadb-3.0.43.tgz similarity index 100% rename from stable/matomo/3.0.35/charts/mariadb-3.0.43.tgz rename to stable/matomo/3.0.36/charts/mariadb-3.0.43.tgz diff --git a/stable/matomo/3.0.35/ix_values.yaml b/stable/matomo/3.0.36/ix_values.yaml similarity index 96% rename from stable/matomo/3.0.35/ix_values.yaml rename to stable/matomo/3.0.36/ix_values.yaml index 9bdec586b3..c8bbe1ab43 100644 --- a/stable/matomo/3.0.35/ix_values.yaml +++ b/stable/matomo/3.0.36/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/matomo - tag: v4.10.1@sha256:bd2902ea4fa700af7b7e2b3e1a6585af5d4e28cbb7cdbf576822025f9926de34 + tag: v4.10.1@sha256:687ca5bf75b51914b2ddc2cb52fc1be945d842896a3e550102aa0dc340e3f1f3 pullPolicy: IfNotPresent securityContext: diff --git a/stable/matomo/3.0.35/questions.yaml b/stable/matomo/3.0.36/questions.yaml similarity index 100% rename from stable/matomo/3.0.35/questions.yaml rename to stable/matomo/3.0.36/questions.yaml diff --git a/stable/omada-controller/6.0.38/templates/common.yaml b/stable/matomo/3.0.36/templates/common.yaml similarity index 100% rename from stable/omada-controller/6.0.38/templates/common.yaml rename to stable/matomo/3.0.36/templates/common.yaml diff --git a/stable/minecraft-java/1.0.31/values.yaml b/stable/matomo/3.0.36/values.yaml similarity index 100% rename from stable/minecraft-java/1.0.31/values.yaml rename to stable/matomo/3.0.36/values.yaml diff --git a/stable/medusa/3.0.26/Chart.lock b/stable/medusa/3.0.26/Chart.lock deleted file mode 100644 index b1a4562260..0000000000 --- a/stable/medusa/3.0.26/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.7 -digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:23:21.882382087Z" diff --git a/stable/medusa/3.0.26/CHANGELOG.md b/stable/medusa/3.0.27/CHANGELOG.md similarity index 90% rename from stable/medusa/3.0.26/CHANGELOG.md rename to stable/medusa/3.0.27/CHANGELOG.md index 1fea771e80..8e3a14ef48 100644 --- a/stable/medusa/3.0.26/CHANGELOG.md +++ b/stable/medusa/3.0.27/CHANGELOG.md @@ -2,6 +2,15 @@ +## [medusa-3.0.27](https://github.com/truecharts/apps/compare/medusa-3.0.26...medusa-3.0.27) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [medusa-3.0.26](https://github.com/truecharts/apps/compare/medusa-3.0.25...medusa-3.0.26) (2022-07-23) @@ -88,12 +97,3 @@ * update helm general non-major helm releases ([#3147](https://github.com/truecharts/apps/issues/3147)) - - -### [mealie-8.0.11](https://github.com/truecharts/apps/compare/mealie-8.0.10...mealie-8.0.11) (2022-07-11) - -#### Chore - -* move icons into the apps folder ([#3139](https://github.com/truecharts/apps/issues/3139)) - - diff --git a/stable/medusa/3.0.27/Chart.lock b/stable/medusa/3.0.27/Chart.lock new file mode 100644 index 0000000000..1601491ecd --- /dev/null +++ b/stable/medusa/3.0.27/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f +generated: "2022-07-25T14:44:21.376748876Z" diff --git a/stable/medusa/3.0.26/Chart.yaml b/stable/medusa/3.0.27/Chart.yaml similarity index 97% rename from stable/medusa/3.0.26/Chart.yaml rename to stable/medusa/3.0.27/Chart.yaml index d79ecf2e47..3dfe8b7bc2 100644 --- a/stable/medusa/3.0.26/Chart.yaml +++ b/stable/medusa/3.0.27/Chart.yaml @@ -24,7 +24,7 @@ sources: - https://github.com/linuxserver/docker-medusa - https://pymedusa.com/ type: application -version: 3.0.26 +version: 3.0.27 annotations: truecharts.org/catagories: | - media diff --git a/stable/medusa/3.0.26/README.md b/stable/medusa/3.0.27/README.md similarity index 98% rename from stable/medusa/3.0.26/README.md rename to stable/medusa/3.0.27/README.md index d470a92b39..675a5c2daf 100644 --- a/stable/medusa/3.0.26/README.md +++ b/stable/medusa/3.0.27/README.md @@ -1,6 +1,6 @@ # medusa -![Version: 3.0.26](https://img.shields.io/badge/Version-3.0.26-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.0.5](https://img.shields.io/badge/AppVersion-1.0.5-informational?style=flat-square) +![Version: 3.0.27](https://img.shields.io/badge/Version-3.0.27-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.0.5](https://img.shields.io/badge/AppVersion-1.0.5-informational?style=flat-square) An automatic Video Library Manager for TV Shows diff --git a/stable/medusa/3.0.26/app-readme.md b/stable/medusa/3.0.27/app-readme.md similarity index 100% rename from stable/medusa/3.0.26/app-readme.md rename to stable/medusa/3.0.27/app-readme.md diff --git a/stable/omada-controller/6.0.38/charts/common-10.4.7.tgz b/stable/medusa/3.0.27/charts/common-10.4.7.tgz similarity index 100% rename from stable/omada-controller/6.0.38/charts/common-10.4.7.tgz rename to stable/medusa/3.0.27/charts/common-10.4.7.tgz diff --git a/stable/medusa/3.0.26/ix_values.yaml b/stable/medusa/3.0.27/ix_values.yaml similarity index 81% rename from stable/medusa/3.0.26/ix_values.yaml rename to stable/medusa/3.0.27/ix_values.yaml index f35f93f194..516cd9a354 100644 --- a/stable/medusa/3.0.26/ix_values.yaml +++ b/stable/medusa/3.0.27/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/medusa pullPolicy: IfNotPresent - tag: v1.0.5@sha256:1e3e2b9da4e7019aa34ee623d9bf04d186494dd54b1eb6358d3461d4b4a30ee8 + tag: v1.0.5@sha256:db112450793346bcf309d80cae21b3fa6a3a8785cb552fe41580dae6f62f9640 securityContext: readOnlyRootFilesystem: false diff --git a/stable/medusa/3.0.26/questions.yaml b/stable/medusa/3.0.27/questions.yaml similarity index 100% rename from stable/medusa/3.0.26/questions.yaml rename to stable/medusa/3.0.27/questions.yaml diff --git a/stable/medusa/3.0.26/templates/common.yaml b/stable/medusa/3.0.27/templates/common.yaml similarity index 100% rename from stable/medusa/3.0.26/templates/common.yaml rename to stable/medusa/3.0.27/templates/common.yaml diff --git a/stable/omada-controller/6.0.38/values.yaml b/stable/medusa/3.0.27/values.yaml similarity index 100% rename from stable/omada-controller/6.0.38/values.yaml rename to stable/medusa/3.0.27/values.yaml diff --git a/stable/minecraft-java/1.0.31/Chart.lock b/stable/minecraft-java/1.0.31/Chart.lock deleted file mode 100644 index f812200643..0000000000 --- a/stable/minecraft-java/1.0.31/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.7 -digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:23:41.277648546Z" diff --git a/stable/minecraft-java/1.0.31/CHANGELOG.md b/stable/minecraft-java/1.0.32/CHANGELOG.md similarity index 91% rename from stable/minecraft-java/1.0.31/CHANGELOG.md rename to stable/minecraft-java/1.0.32/CHANGELOG.md index 93458e73d9..7a31fa948b 100644 --- a/stable/minecraft-java/1.0.31/CHANGELOG.md +++ b/stable/minecraft-java/1.0.32/CHANGELOG.md @@ -2,6 +2,15 @@ +## [minecraft-java-1.0.32](https://github.com/truecharts/apps/compare/minecraft-java-1.0.31...minecraft-java-1.0.32) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [minecraft-java-1.0.31](https://github.com/truecharts/apps/compare/minecraft-java-1.0.30...minecraft-java-1.0.31) (2022-07-23) ### Chore @@ -88,12 +97,3 @@ ### Fix - bump to ensure .helmignore is present on all Charts - - - -## [minecraft-java-1.0.21](https://github.com/truecharts/apps/compare/minecraft-java-1.0.19...minecraft-java-1.0.21) (2022-07-12) - -### Chore - -- update icons ([#3156](https://github.com/truecharts/apps/issues/3156)) -- bump to cleanup old docs and use correct icon urls diff --git a/stable/minecraft-java/1.0.32/Chart.lock b/stable/minecraft-java/1.0.32/Chart.lock new file mode 100644 index 0000000000..8743795275 --- /dev/null +++ b/stable/minecraft-java/1.0.32/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f +generated: "2022-07-25T14:44:30.747837595Z" diff --git a/stable/minecraft-java/1.0.31/Chart.yaml b/stable/minecraft-java/1.0.32/Chart.yaml similarity index 97% rename from stable/minecraft-java/1.0.31/Chart.yaml rename to stable/minecraft-java/1.0.32/Chart.yaml index 3675d6cb75..0c3d665595 100644 --- a/stable/minecraft-java/1.0.31/Chart.yaml +++ b/stable/minecraft-java/1.0.32/Chart.yaml @@ -20,7 +20,7 @@ sources: - https://github.com/itzg/docker-minecraft-server - https://hub.docker.com/r/itzg/minecraft-server type: application -version: 1.0.31 +version: 1.0.32 annotations: truecharts.org/catagories: | - games diff --git a/stable/minecraft-java/1.0.31/README.md b/stable/minecraft-java/1.0.32/README.md similarity index 98% rename from stable/minecraft-java/1.0.31/README.md rename to stable/minecraft-java/1.0.32/README.md index 4801fe2102..42346ea739 100644 --- a/stable/minecraft-java/1.0.31/README.md +++ b/stable/minecraft-java/1.0.32/README.md @@ -1,6 +1,6 @@ # minecraft-java -![Version: 1.0.31](https://img.shields.io/badge/Version-1.0.31-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2022.10.0](https://img.shields.io/badge/AppVersion-2022.10.0-informational?style=flat-square) +![Version: 1.0.32](https://img.shields.io/badge/Version-1.0.32-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2022.10.0](https://img.shields.io/badge/AppVersion-2022.10.0-informational?style=flat-square) Minecraft Java Dedicated Server diff --git a/stable/minecraft-java/1.0.31/app-readme.md b/stable/minecraft-java/1.0.32/app-readme.md similarity index 100% rename from stable/minecraft-java/1.0.31/app-readme.md rename to stable/minecraft-java/1.0.32/app-readme.md diff --git a/stable/prometheus/4.0.46/charts/common-10.4.7.tgz b/stable/minecraft-java/1.0.32/charts/common-10.4.7.tgz similarity index 100% rename from stable/prometheus/4.0.46/charts/common-10.4.7.tgz rename to stable/minecraft-java/1.0.32/charts/common-10.4.7.tgz diff --git a/stable/minecraft-java/1.0.31/ci/base-values.yaml b/stable/minecraft-java/1.0.32/ci/base-values.yaml similarity index 100% rename from stable/minecraft-java/1.0.31/ci/base-values.yaml rename to stable/minecraft-java/1.0.32/ci/base-values.yaml diff --git a/stable/minecraft-java/1.0.31/ci/j11-values.yaml b/stable/minecraft-java/1.0.32/ci/j11-values.yaml similarity index 54% rename from stable/minecraft-java/1.0.31/ci/j11-values.yaml rename to stable/minecraft-java/1.0.32/ci/j11-values.yaml index 4e0473eec7..5d5cb169e3 100644 --- a/stable/minecraft-java/1.0.31/ci/j11-values.yaml +++ b/stable/minecraft-java/1.0.32/ci/j11-values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/minecraft-java11 - tag: latest@sha256:71b89d32155dfb577badbbb2752bc1f78a3d18873588421f6a3447f7c65a5523 + tag: latest@sha256:00feb853809dad3fefd6ae8fcc4c323d627467f54092f1b243a091ca88b9e813 pullPolicy: Always env: diff --git a/stable/minecraft-java/1.0.31/ci/j11j9-values.yaml b/stable/minecraft-java/1.0.32/ci/j11j9-values.yaml similarity index 100% rename from stable/minecraft-java/1.0.31/ci/j11j9-values.yaml rename to stable/minecraft-java/1.0.32/ci/j11j9-values.yaml diff --git a/stable/minecraft-java/1.0.31/ci/j8-values.yaml b/stable/minecraft-java/1.0.32/ci/j8-values.yaml similarity index 56% rename from stable/minecraft-java/1.0.31/ci/j8-values.yaml rename to stable/minecraft-java/1.0.32/ci/j8-values.yaml index ff18bacb1a..7ca7e2f4bc 100644 --- a/stable/minecraft-java/1.0.31/ci/j8-values.yaml +++ b/stable/minecraft-java/1.0.32/ci/j8-values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/minecraft-java8-openj9 - tag: latest@sha256:186c0cd44469009149a68efccb001c41e9ad83552bce5b3e3d13b5e0c2aa5488 + tag: latest@sha256:be629ce040cedc52f4ca9ea2ff4d96176120c79681bf4aad757e1f5f84a0f537 pullPolicy: Always env: diff --git a/stable/minecraft-java/1.0.31/ci/j8j9-values.yaml b/stable/minecraft-java/1.0.32/ci/j8j9-values.yaml similarity index 100% rename from stable/minecraft-java/1.0.31/ci/j8j9-values.yaml rename to stable/minecraft-java/1.0.32/ci/j8j9-values.yaml diff --git a/stable/minecraft-java/1.0.31/ix_values.yaml b/stable/minecraft-java/1.0.32/ix_values.yaml similarity index 90% rename from stable/minecraft-java/1.0.31/ix_values.yaml rename to stable/minecraft-java/1.0.32/ix_values.yaml index a383c6b95c..81345cf74c 100644 --- a/stable/minecraft-java/1.0.31/ix_values.yaml +++ b/stable/minecraft-java/1.0.32/ix_values.yaml @@ -4,7 +4,7 @@ image: pullPolicy: Always j11Image: repository: tccr.io/truecharts/minecraft-java11 - tag: latest@sha256:71b89d32155dfb577badbbb2752bc1f78a3d18873588421f6a3447f7c65a5523 + tag: latest@sha256:00feb853809dad3fefd6ae8fcc4c323d627467f54092f1b243a091ca88b9e813 pullPolicy: Always j11j9Image: repository: tccr.io/truecharts/minecraft-java11-openj9 @@ -12,11 +12,11 @@ j11j9Image: pullPolicy: Always j8Image: repository: tccr.io/truecharts/minecraft-java8-openj9 - tag: latest@sha256:186c0cd44469009149a68efccb001c41e9ad83552bce5b3e3d13b5e0c2aa5488 + tag: latest@sha256:be629ce040cedc52f4ca9ea2ff4d96176120c79681bf4aad757e1f5f84a0f537 pullPolicy: Always j8j9Image: repository: tccr.io/truecharts/minecraft-java8-openj9 - tag: latest@sha256:186c0cd44469009149a68efccb001c41e9ad83552bce5b3e3d13b5e0c2aa5488 + tag: latest@sha256:be629ce040cedc52f4ca9ea2ff4d96176120c79681bf4aad757e1f5f84a0f537 pullPolicy: Always portal: diff --git a/stable/minecraft-java/1.0.31/questions.yaml b/stable/minecraft-java/1.0.32/questions.yaml similarity index 100% rename from stable/minecraft-java/1.0.31/questions.yaml rename to stable/minecraft-java/1.0.32/questions.yaml diff --git a/stable/rsshub/3.0.49/templates/common.yaml b/stable/minecraft-java/1.0.32/templates/common.yaml similarity index 100% rename from stable/rsshub/3.0.49/templates/common.yaml rename to stable/minecraft-java/1.0.32/templates/common.yaml diff --git a/stable/prometheus/4.0.46/values.yaml b/stable/minecraft-java/1.0.32/values.yaml similarity index 100% rename from stable/prometheus/4.0.46/values.yaml rename to stable/minecraft-java/1.0.32/values.yaml diff --git a/stable/nextcloud/15.2.27/CHANGELOG.md b/stable/nextcloud/15.2.27/CHANGELOG.md new file mode 100644 index 0000000000..1f1e7dba3a --- /dev/null +++ b/stable/nextcloud/15.2.27/CHANGELOG.md @@ -0,0 +1,99 @@ +# Changelog + + + +## [nextcloud-15.2.27](https://github.com/truecharts/apps/compare/nextcloud-15.2.26...nextcloud-15.2.27) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + +## [nextcloud-15.2.26](https://github.com/truecharts/apps/compare/nextcloud-15.2.25...nextcloud-15.2.26) (2022-07-23) + +### Chore + +- Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) + + + + +## [nextcloud-15.2.26](https://github.com/truecharts/apps/compare/nextcloud-15.2.25...nextcloud-15.2.26) (2022-07-23) + +### Chore + +- Auto-update chart README [skip ci] + - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) + + + + +## [nextcloud-15.2.26](https://github.com/truecharts/apps/compare/nextcloud-15.2.25...nextcloud-15.2.26) (2022-07-23) + +### Chore + +- update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) + + + + +## [nextcloud-15.2.25](https://github.com/truecharts/apps/compare/nextcloud-15.2.24...nextcloud-15.2.25) (2022-07-23) + +### Chore + +- update docker general non-major ([#3276](https://github.com/truecharts/apps/issues/3276)) + + + + +## [nextcloud-15.2.24](https://github.com/truecharts/apps/compare/nextcloud-15.2.23...nextcloud-15.2.24) (2022-07-23) + +### Chore + +- update helm general non-major helm releases ([#3274](https://github.com/truecharts/apps/issues/3274)) + + + + +## [nextcloud-15.2.23](https://github.com/truecharts/apps/compare/nextcloud-15.2.21...nextcloud-15.2.23) (2022-07-22) + +### Chore + +- Bump all charts to generate config and container references due to huge increase of repository + - update helm general non-major helm releases ([#3268](https://github.com/truecharts/apps/issues/3268)) + - update docker general non-major ([#3266](https://github.com/truecharts/apps/issues/3266)) + + + +## [nextcloud-15.2.21](https://github.com/truecharts/apps/compare/nextcloud-15.2.20...nextcloud-15.2.21) (2022-07-22) + +### Chore + +- update docker general non-major ([#3258](https://github.com/truecharts/apps/issues/3258)) + + + +## [nextcloud-15.2.20](https://github.com/truecharts/apps/compare/nextcloud-15.2.19...nextcloud-15.2.20) (2022-07-20) + +### Chore + +- update docker general non-major ([#3222](https://github.com/truecharts/apps/issues/3222)) + + + +## [nextcloud-15.2.19](https://github.com/truecharts/apps/compare/nextcloud-15.2.18...nextcloud-15.2.19) (2022-07-19) + +### Chore + +- Update Readme and Description on SCALE + + + +## [nextcloud-15.2.18](https://github.com/truecharts/apps/compare/nextcloud-15.2.17...nextcloud-15.2.18) (2022-07-16) + +### Chore + diff --git a/stable/nextcloud/15.2.27/Chart.lock b/stable/nextcloud/15.2.27/Chart.lock new file mode 100644 index 0000000000..b7b8c3f01f --- /dev/null +++ b/stable/nextcloud/15.2.27/Chart.lock @@ -0,0 +1,15 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +- name: postgresql + repository: https://charts.truecharts.org/ + version: 8.0.45 +- name: collabora-online + repository: https://charts.truecharts.org/ + version: 12.1.21 +- name: redis + repository: https://charts.truecharts.org + version: 3.0.44 +digest: sha256:d55f64ad0e6636023b5a0b50f60725e68903c375e08935350abc45b97c8e437f +generated: "2022-07-25T14:44:51.362227438Z" diff --git a/stable/nextcloud/15.2.27/Chart.yaml b/stable/nextcloud/15.2.27/Chart.yaml new file mode 100644 index 0000000000..dbf458e878 --- /dev/null +++ b/stable/nextcloud/15.2.27/Chart.yaml @@ -0,0 +1,46 @@ +apiVersion: v2 +appVersion: "24.0.3" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 + - condition: postgresql.enabled + name: postgresql + repository: https://charts.truecharts.org/ + version: 8.0.45 + - condition: collabora.enabled + name: collabora-online + repository: https://charts.truecharts.org/ + version: 12.1.21 + - condition: redis.enabled + name: redis + repository: https://charts.truecharts.org + version: 3.0.44 +deprecated: false +description: + A private cloud server that puts the control and security of your own + data back into your hands. +home: https://github.com/truecharts/apps/tree/master/charts/stable/nextcloud +icon: https://truecharts.org/img/chart-icons/nextcloud.png +keywords: + - nextcloud + - storage + - http + - web + - php +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: nextcloud +sources: + - https://github.com/nextcloud/docker + - https://github.com/nextcloud/helm +type: application +version: 15.2.27 +annotations: + truecharts.org/catagories: | + - cloud + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/stable/nextcloud/15.2.27/README.md b/stable/nextcloud/15.2.27/README.md new file mode 100644 index 0000000000..8010ac517b --- /dev/null +++ b/stable/nextcloud/15.2.27/README.md @@ -0,0 +1,111 @@ +# nextcloud + +![Version: 15.2.27](https://img.shields.io/badge/Version-15.2.27-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 24.0.3](https://img.shields.io/badge/AppVersion-24.0.3-informational?style=flat-square) + +A private cloud server that puts the control and security of your own data back into your hands. + +TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE. + +This readme is just an automatically generated general guide on installing our Helm Charts and Apps. +For more information, please click here: [nextcloud](https://truecharts.org/docs/charts/stable/nextcloud) + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** + +## Source Code + +* +* + +## Requirements + +Kubernetes: `>=1.16.0-0` + +## Dependencies + +| Repository | Name | Version | +|------------|------|---------| +| https://charts.truecharts.org/ | collabora-online | 12.1.21 | +| https://charts.truecharts.org/ | postgresql | 8.0.45 | +| https://charts.truecharts.org | redis | 3.0.44 | +| https://library-charts.truecharts.org | common | 10.4.7 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this App on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/Quick-Start%20Guides/02-Installing-an-App/). + +### Helm + +To install the chart with the release name `nextcloud` + +```console +helm repo add TrueCharts https://helm.truecharts.org +helm repo update +helm install nextcloud TrueCharts/nextcloud +``` + +## Uninstall + +### TrueNAS SCALE + +**Upgrading, Rolling Back and Uninstalling the Chart** + +To upgrade, rollback or delete this App from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/Quick-Start%20Guides/04-Upgrade-rollback-delete-an-App/). + +### Helm + +To uninstall the `nextcloud` deployment + +```console +helm uninstall nextcloud +``` + +## Configuration + +### Helm + +#### Available Settings + +Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values. +Other values may be used from the [values.yaml](https://github.com/truecharts/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common). + +#### Configure using the Commandline + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install nextcloud \ + --set env.TZ="America/New York" \ + TrueCharts/nextcloud +``` + +#### Configure using a yaml file + +Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. + +```console +helm install nextcloud TrueCharts/nextcloud -f values.yaml +``` + +#### Connecting to other apps + +If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our [Linking Apps Internally](https://truecharts.org/docs/manual/Quick-Start%20Guides/06-linking-apps/) quick-start guide. + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Important-MUST-READ). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/apps/issues/new/choose) + +--- + +## Sponsor TrueCharts + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! + +--- + +All Rights Reserved - The TrueCharts Project diff --git a/stable/nextcloud/15.2.27/app-readme.md b/stable/nextcloud/15.2.27/app-readme.md new file mode 100644 index 0000000000..a9578ec10a --- /dev/null +++ b/stable/nextcloud/15.2.27/app-readme.md @@ -0,0 +1,8 @@ +A private cloud server that puts the control and security of your own data back into your hands. + +This App is supplied by TrueCharts, for more information visit the manual: https://truecharts.org/charts/stable/nextcloud + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! diff --git a/stable/nextcloud/15.2.27/charts/collabora-online-12.1.21.tgz b/stable/nextcloud/15.2.27/charts/collabora-online-12.1.21.tgz new file mode 100644 index 0000000000000000000000000000000000000000..e0e5774cbc9fec8499567498a7ae368fb4ded772 GIT binary patch literal 57558 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 literal 0 HcmV?d00001 diff --git a/stable/rsshub/3.0.49/charts/common-10.4.7.tgz b/stable/nextcloud/15.2.27/charts/common-10.4.7.tgz similarity index 100% rename from stable/rsshub/3.0.49/charts/common-10.4.7.tgz rename to stable/nextcloud/15.2.27/charts/common-10.4.7.tgz diff --git a/stable/nextcloud/15.2.27/charts/postgresql-8.0.45.tgz b/stable/nextcloud/15.2.27/charts/postgresql-8.0.45.tgz new file mode 100644 index 0000000000000000000000000000000000000000..865afe15cbb44a95fa3be9134c1df52a33f1b769 GIT binary patch literal 60672 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 literal 0 HcmV?d00001 diff --git a/stable/rsshub/3.0.49/charts/redis-3.0.44.tgz b/stable/nextcloud/15.2.27/charts/redis-3.0.44.tgz similarity index 100% rename from stable/rsshub/3.0.49/charts/redis-3.0.44.tgz rename to stable/nextcloud/15.2.27/charts/redis-3.0.44.tgz diff --git a/stable/nextcloud/15.2.27/ci/basic-values.yaml b/stable/nextcloud/15.2.27/ci/basic-values.yaml new file mode 100644 index 0000000000..0e1ca14554 --- /dev/null +++ b/stable/nextcloud/15.2.27/ci/basic-values.yaml @@ -0,0 +1,11 @@ +env: + # IP used for exposing nextcloud + # Often the service or nodePort IP + AccessIP: "127.0.0.1" + +service: + main: + ports: + main: + port: 8080 + targetPort: 8080 diff --git a/stable/nextcloud/15.2.27/ix_values.yaml b/stable/nextcloud/15.2.27/ix_values.yaml new file mode 100644 index 0000000000..fb3a992987 --- /dev/null +++ b/stable/nextcloud/15.2.27/ix_values.yaml @@ -0,0 +1,423 @@ +image: + repository: tccr.io/truecharts/nextcloud-fpm + pullPolicy: IfNotPresent + tag: v24.0.3@sha256:b71da14022ff422260d69c1938cacf2ec9594704d7c1e3dfb5e8078fdf24cefb + +nginxImage: + repository: tccr.io/truecharts/nginx-unprivileged + pullPolicy: IfNotPresent + tag: 1.23.1@sha256:7f769eedf8a04939e23a2a58c7b71b4c0d9a89d54844a00863fd58fcde4c8cd4 + +imaginaryImage: + repository: h2non/imaginary + pullPolicy: IfNotPresent + tag: 1.2.4@sha256:7facb4221047a5e79b9e902f380247f4e5bf4376400d0badbeb738d3e1c2f654 + +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false + +podSecurityContext: + runAsUser: 0 + runAsGroup: 0 + fsGroup: 33 + +service: + main: + ports: + main: + port: 10020 + targetPort: 8080 + backend: + enabled: true + ports: + hpb: + enabled: true + port: 7867 + targetPort: 7867 + hpb-metrics: + enabled: true + port: 7868 + targetPort: 7868 + fpm: + enabled: true + port: 9000 + targetPort: 9000 + imaginary: + enabled: true + port: 9090 + targetPort: 9090 + +hostAliases: + - ip: '{{ .Values.env.AccessIP | default "127.0.0.1" }}' + hostnames: + - "{{ if .Values.ingress.main.enabled }}{{ with (first .Values.ingress.main.hosts) }}{{ .host }}{{ end }}{{ else }}placeholder.fakedomain.dns{{ end }}" + +secretEnv: + NEXTCLOUD_ADMIN_USER: "admin" + NEXTCLOUD_ADMIN_PASSWORD: "adminpass" + +probes: + liveness: + custom: true + spec: + initialDelaySeconds: 25 + httpGet: + path: /status.php + port: 8080 + httpHeaders: + - name: Host + value: "test.fakedomain.dns" + + readiness: + custom: true + spec: + initialDelaySeconds: 25 + httpGet: + path: /status.php + port: 8080 + httpHeaders: + - name: Host + value: "test.fakedomain.dns" + + startup: + custom: true + spec: + initialDelaySeconds: 25 + httpGet: + path: /status.php + port: 8080 + httpHeaders: + - name: Host + value: "test.fakedomain.dns" + +initContainers: + prestart: + image: '{{ include "tc.common.images.selector" . }}' + securityContext: + runAsUser: 0 + runAsGroup: 0 + privileged: true + command: + - "/bin/sh" + - "-c" + - | + /bin/bash <<'EOF' + if [[ -f /data/config/config.php ]] && [[ ! -f /html/config/config.php ]]; then + echo "migrating from single to dual PVC's..." + echo "moving to placeholder location..." + mv -f /var/www/html/data/* /var/www/html/data/tomigrate/ + echo "moving userdata to data-pvc root..." + mv -f /var/www/html/data/tomigrate/data/* /var/www/html/data/ + echo "removing old data folder..." + rm -rf /var/www/html/data/tomigrate/data + echo "moving config, apps, templates and other content to html-pvc root..." + mv -f /var/www/html/data/tomigrate/* /var/www/html/ + echo "Removing migration temporary folder..." + rm -rf /var/www/html/data/tomigrate + fi + echo "Enforcing chmod 770 on data-dir..." + chmod 770 /var/www/html/data + echo "Migrating old data when found..." + EOF + + volumeMounts: + - name: data + mountPath: "/var/www/html/data" + - name: html + mountPath: "/var/www/html" + +env: + # IP used for exposing nextcloud + # Often the service or nodePort IP + # Defaults to the main serviceName for CI purposes. + AccessIP: + NEXTCLOUD_INIT_HTACCESS: true + PHP_INI_MEMORY_LIMIT: 1G + PHP_UPLOAD_LIMIT: 10G + NEXTCLOUD_CHUNKSIZE: "31457280" + TRUSTED_PROXIES: "172.16.0.0/16 127.0.0.1" + POSTGRES_DB: "{{ .Values.postgresql.postgresqlDatabase }}" + POSTGRES_USER: "{{ .Values.postgresql.postgresqlUsername }}" + POSTGRES_PASSWORD: + secretKeyRef: + name: dbcreds + key: postgresql-password + POSTGRES_HOST: + secretKeyRef: + name: dbcreds + key: plainporthost + REDIS_HOST: + secretKeyRef: + name: rediscreds + key: plainhost + REDIS_HOST_PASSWORD: + secretKeyRef: + name: rediscreds + key: redis-password + +envFrom: + - configMapRef: + name: nextcloudconfig + +persistence: + html: + enabled: true + mountPath: "/var/www/html" + data: + enabled: true + mountPath: "/var/www/html/data" + varrun: + enabled: true + cache: + enabled: true + type: emptyDir + mountPath: /var/cache/nginx + medium: Memory + nginx: + enabled: "true" + mountPath: "/etc/nginx" + noMount: true + readOnly: true + type: "custom" + volumeSpec: + configMap: + name: '{{ include "tc.common.names.fullname" . }}-nginx' + items: + - key: nginx.conf + path: nginx.conf + +configmap: + nginx: + enabled: true + data: + nginx.conf: |- + worker_processes auto; + + error_log /var/log/nginx/error.log warn; + pid /var/run/nginx.pid; + + + events { + worker_connections 1024; + } + + + http { + include /etc/nginx/mime.types; + default_type application/octet-stream; + + log_format main '$remote_addr - $remote_user [$time_local] "$request" ' + '$status $body_bytes_sent "$http_referer" ' + '"$http_user_agent" "$http_x_forwarded_for"'; + + access_log /var/log/nginx/access.log main; + + sendfile on; + #tcp_nopush on; + + # Prevent nginx HTTP Server Detection + server_tokens off; + + keepalive_timeout 65; + + #gzip on; + + upstream php-handler { + server 127.0.0.1:9000; + } + + server { + listen 8080; + absolute_redirect off; + + # Forward Notify_Push "High Performance Backend" to it's own container + location ^~ /push/ { + proxy_pass http://127.0.0.1:7867/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + proxy_set_header Host $host; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + } + + # HSTS settings + # WARNING: Only add the preload option once you read about + # the consequences in https://hstspreload.org/. This option + # will add the domain to a hardcoded list that is shipped + # in all major browsers and getting removed from this list + # could take several months. + #add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;" always; + + # set max upload size + client_max_body_size 512M; + fastcgi_buffers 64 4K; + + # Enable gzip but do not remove ETag headers + gzip on; + gzip_vary on; + gzip_comp_level 4; + gzip_min_length 256; + gzip_proxied expired no-cache no-store private no_last_modified no_etag auth; + gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy; + + # Pagespeed is not supported by Nextcloud, so if your server is built + # with the `ngx_pagespeed` module, uncomment this line to disable it. + #pagespeed off; + + # HTTP response headers borrowed from Nextcloud `.htaccess` + add_header Referrer-Policy "no-referrer" always; + add_header X-Content-Type-Options "nosniff" always; + add_header X-Download-Options "noopen" always; + add_header X-Frame-Options "SAMEORIGIN" always; + add_header X-Permitted-Cross-Domain-Policies "none" always; + add_header X-Robots-Tag "none" always; + add_header X-XSS-Protection "1; mode=block" always; + + # Remove X-Powered-By, which is an information leak + fastcgi_hide_header X-Powered-By; + + # Path to the root of your installation + root /var/www/html; + + # Specify how to handle directories -- specifying `/index.php$request_uri` + # here as the fallback means that Nginx always exhibits the desired behaviour + # when a client requests a path that corresponds to a directory that exists + # on the server. In particular, if that directory contains an index.php file, + # that file is correctly served; if it doesn't, then the request is passed to + # the front-end controller. This consistent behaviour means that we don't need + # to specify custom rules for certain paths (e.g. images and other assets, + # `/updater`, `/ocm-provider`, `/ocs-provider`), and thus + # `try_files $uri $uri/ /index.php$request_uri` + # always provides the desired behaviour. + index index.php index.html /index.php$request_uri; + + # Rule borrowed from `.htaccess` to handle Microsoft DAV clients + location = / { + if ( $http_user_agent ~ ^DavClnt ) { + return 302 /remote.php/webdav/$is_args$args; + } + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + # Make a regex exception for `/.well-known` so that clients can still + # access it despite the existence of the regex rule + # `location ~ /(\.|autotest|...)` which would otherwise handle requests + # for `/.well-known`. + location ^~ /.well-known { + # The rules in this block are an adaptation of the rules + # in `.htaccess` that concern `/.well-known`. + + location = /.well-known/carddav { return 301 /remote.php/dav/; } + location = /.well-known/caldav { return 301 /remote.php/dav/; } + + # according to the documentation these two lines are not necessary, but some users are still recieving errors + location = /.well-known/webfinger { return 301 /index.php$uri; } + location = /.well-known/nodeinfo { return 301 /index.php$uri; } + + location /.well-known/acme-challenge { try_files $uri $uri/ =404; } + location /.well-known/pki-validation { try_files $uri $uri/ =404; } + + # Let Nextcloud's API for `/.well-known` URIs handle all other + # requests by passing them to the front-end controller. + return 301 /index.php$request_uri; + } + + # Rules borrowed from `.htaccess` to hide certain paths from clients + location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)(?:$|/) { return 404; } + location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) { return 404; } + + # Ensure this block, which passes PHP files to the PHP process, is above the blocks + # which handle static assets (as seen below). If this block is not declared first, + # then Nginx will encounter an infinite rewriting loop when it prepends `/index.php` + # to the URI, resulting in a HTTP 500 error response. + location ~ \.php(?:$|/) { + # Required for legacy support + rewrite ^/(?!index|remote|public|cron|core\/ajax\/update|status|ocs\/v[12]|updater\/.+|oc[ms]-provider\/.+|.+\/richdocumentscode\/proxy) /index.php$request_uri; + + fastcgi_split_path_info ^(.+?\.php)(/.*)$; + set $path_info $fastcgi_path_info; + + try_files $fastcgi_script_name =404; + + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param PATH_INFO $path_info; + #fastcgi_param HTTPS on; + + fastcgi_param modHeadersAvailable true; # Avoid sending the security headers twice + fastcgi_param front_controller_active true; # Enable pretty urls + fastcgi_pass php-handler; + + fastcgi_intercept_errors on; + fastcgi_request_buffering off; + + proxy_send_timeout 300s; + proxy_read_timeout 300s; + fastcgi_send_timeout 300s; + fastcgi_read_timeout 300s; + } + + location ~ \.(?:css|js|svg|gif)$ { + try_files $uri /index.php$request_uri; + expires 6M; # Cache-Control policy borrowed from `.htaccess` + access_log off; # Optional: Don't log access to assets + } + + location ~ \.woff2?$ { + try_files $uri /index.php$request_uri; + expires 7d; # Cache-Control policy borrowed from `.htaccess` + access_log off; # Optional: Don't log access to assets + } + + # Rule borrowed from `.htaccess` + location /remote { + return 301 /remote.php$request_uri; + } + + location / { + try_files $uri $uri/ /index.php$request_uri; + } + } + } + +cronjob: + enabled: true + generatePreviews: true + schedule: "*/5 * * * *" + annotations: {} + failedJobsHistoryLimit: 5 + successfulJobsHistoryLimit: 2 + +hpb: + enabled: true + +imaginary: + enabled: true + +collabora: + enabled: false + env: + aliasgroup1: + configMapRef: + name: nextcloudconfig + key: aliasgroup1 + dictionaries: "de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru" + extra_params: "--o:welcome.enable=false --o:logging.level=information --o:user_interface.mode=notebookbar --o:ssl.termination=true --o:ssl.enable=false " + server_name: "" + DONT_GEN_SSL_CERT: true + +postgresql: + enabled: true + existingSecret: "dbcreds" + postgresqlUsername: nextcloud + postgresqlDatabase: nextcloud + +redis: + enabled: true + existingSecret: "rediscreds" diff --git a/stable/nextcloud/15.2.27/questions.yaml b/stable/nextcloud/15.2.27/questions.yaml new file mode 100644 index 0000000000..d95e876346 --- /dev/null +++ b/stable/nextcloud/15.2.27/questions.yaml @@ -0,0 +1,2665 @@ +groups: + - name: "Container Image" + description: "Image to be used for container" + - name: "Controller" + description: "Configure workload deployment" + - name: "Container Configuration" + description: "additional container configuration" + - name: "App Configuration" + description: "App specific config options" + - name: "Networking and Services" + description: "Configure Network and Services for container" + - name: "Storage and Persistence" + description: "Persist and share data that is separate from the container" + - name: "Ingress" + description: "Ingress Configuration" + - name: "Security and Permissions" + description: "Configure security context and permissions" + - name: "Resources and Devices" + description: "Specify resources/devices to be allocated to workload" + - name: "Middlewares" + description: "Traefik Middlewares" + - name: "Metrics" + description: "Metrics" + - name: "Addons" + description: "Addon Configuration" + - name: "Advanced" + description: "Advanced Configuration" +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true + - variable: global + label: "global settings" + group: "Controller" + schema: + type: dict + hidden: true + attrs: + - variable: isSCALE + label: "flag this is SCALE" + schema: + type: boolean + default: true + hidden: true + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" + - variable: expert + label: "Show Expert Configuration Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: extraArgs + label: "Extra Args" + schema: + type: list + default: [] + items: + - variable: arg + label: "arg" + schema: + type: string + - variable: labelsList + label: "Controller Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: " Controller Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: secretEnv + group: "Container Configuration" + label: "Image Secrets" + schema: + additional_attrs: true + type: dict + attrs: + - variable: NEXTCLOUD_ADMIN_USER + label: "NEXTCLOUD_ADMIN_USER (First Install Only)" + description: "Sets the initial nextcloud's admin username, changing this variable after first launch will NOT change admin's username" + schema: + type: string + required: true + default: "REPLACETHIS" + - variable: NEXTCLOUD_ADMIN_PASSWORD + label: "NEXTCLOUD_ADMIN_PASSWORD (First Install Only)" + description: "Sets the initial nextcloud's admin password, changing this variable after first launch will NOT change admin's password" + schema: + type: string + private: true + required: true + default: "REPLACETHIS" + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + - variable: TRUSTED_PROXIES + label: "Trusted Proxies (First Install Only - Advanced)" + description: "Sets nextcloud Trusted Proxies" + schema: + type: string + default: "172.16.0.0/16 127.0.0.1" + - variable: PHP_INI_MEMORY_LIMIT + label: "PHP_INI_MEMORY_LIMIT" + description: "Sets php memory_limit setting" + schema: + type: string + default: "1G" + - variable: PHP_UPLOAD_LIMIT + label: "PHP_UPLOAD_LIMIT" + description: "Sets php upload_max_filesize and post_max_size settings" + schema: + type: string + default: "10G" + - variable: AccessIP + label: "Access IP" + description: "Set to the IP-Address used to reach Nextcloud. Most often the Service or NodePort IP (Ensure this is correct!)" + schema: + type: string + required: true + $ref: + - "definitions/nodeIP" + + - variable: TZ + label: "Timezone" + group: "Container Configuration" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + + - variable: envList + label: "Image environment" + group: "Container Configuration" + schema: + type: list + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: expertpodconf + group: "Container Configuration" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: tty + label: "Enable TTY" + description: "Determines whether containers in a pod runs with TTY enabled. By default pod has it disabled." + group: "Workload Details" + schema: + type: boolean + default: false + - variable: stdin + label: "Enable STDIN" + description: "Determines whether containers in a pod runs with stdin enabled. By default pod has it disabled." + group: "Workload Details" + schema: + type: boolean + default: false + - variable: termination + group: "Container Configuration" + label: "Termination settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: gracePeriodSeconds + label: "Grace Period Seconds" + schema: + type: int + default: 10 + - variable: podLabelsList + group: "Container Configuration" + label: "Pod Labels" + schema: + type: list + default: [] + items: + - variable: podLabelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: podAnnotationsList + group: "Container Configuration" + label: "Pod Annotations" + schema: + type: list + default: [] + items: + - variable: podAnnotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the service" + schema: + type: boolean + default: true + hidden: true + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "Simple" + enum: + - value: "Simple" + description: "Simple" + - value: "ClusterIP" + description: "ClusterIP" + - value: "NodePort" + description: "NodePort (Advanced)" + - value: "LoadBalancer" + description: "LoadBalancer (Advanced)" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: ipFamilyPolicy + label: "IP Family Policy" + description: "(Advanced) Specify the ip policy" + schema: + show_if: [["type", "!=", "Simple"]] + type: string + default: "SingleStack" + enum: + - value: "SingleStack" + description: "SingleStack" + - value: "PreferDualStack" + description: "PreferDualStack" + - value: "RequireDualStack" + description: "RequireDualStack" + - variable: ipFamilies + label: "(advanced) IP families" + description: "(advanced) The ip families that should be used" + schema: + show_if: [["type", "!=", "Simple"]] + type: list + default: [] + items: + - variable: ipFamily + label: "IP family" + schema: + type: string + - variable: ports + label: "Service's Port(s) Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 10020 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8080 + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + + - variable: externalInterfaces + description: "Add External Interfaces" + label: "Add external Interfaces" + group: "Networking" + schema: + type: list + items: + - variable: interfaceConfiguration + description: "Interface Configuration" + label: "Interface Configuration" + schema: + type: dict + $ref: + - "normalize/interfaceConfiguration" + attrs: + - variable: hostInterface + description: "Please specify host interface" + label: "Host Interface" + schema: + type: string + required: true + $ref: + - "definitions/interface" + - variable: ipam + description: "Define how IP Address will be managed" + label: "IP Address Management" + schema: + type: dict + required: true + attrs: + - variable: type + description: "Specify type for IPAM" + label: "IPAM Type" + schema: + type: string + required: true + enum: + - value: "dhcp" + description: "Use DHCP" + - value: "static" + description: "Use static IP" + show_subquestions_if: "static" + subquestions: + - variable: staticIPConfigurations + label: "Static IP Addresses" + schema: + type: list + items: + - variable: staticIP + label: "Static IP" + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: "Static Routes" + schema: + type: list + items: + - variable: staticRouteConfiguration + label: "Static Route Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: destination + label: "Destination" + schema: + type: ipaddr + cidr: true + required: true + - variable: gateway + label: "Gateway" + schema: + type: ipaddr + cidr: false + required: true + + - variable: dnsPolicy + group: "Networking and Services" + label: "dnsPolicy" + schema: + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "ClusterFirst" + description: "ClusterFirst" + - value: "ClusterFirstWithHostNet" + description: "ClusterFirstWithHostNet" + - value: "None" + description: "None" + + - variable: dnsConfig + label: "DNS Configuration" + group: "Networking and Services" + description: "Specify custom DNS configuration which will be applied to the pod" + schema: + additional_attrs: true + type: dict + attrs: + - variable: nameservers + label: "Nameservers" + schema: + default: [] + type: list + items: + - variable: nameserver + label: "Nameserver" + schema: + type: string + - variable: options + label: "options" + schema: + default: [] + type: list + items: + - variable: option + label: "Option Entry" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: searches + label: "Searches" + schema: + default: [] + type: list + items: + - variable: search + label: "Search Entry" + schema: + type: string + + - variable: serviceList + label: "Add Manual Custom Services" + group: "Networking and Services" + schema: + type: list + default: [] + items: + - variable: serviceListEntry + label: "Custom Service" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the service" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name" + schema: + type: string + default: "" + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "Simple" + enum: + - value: "Simple" + description: "Simple" + - value: "NodePort" + description: "NodePort" + - value: "ClusterIP" + description: "ClusterIP" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: portsList + label: "Additional Service Ports" + schema: + type: list + default: [] + items: + - variable: portsListEntry + label: "Custom ports" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Port Name" + schema: + type: string + default: "" + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: targetPort + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + required: true + - variable: port + label: "Container Port" + schema: + type: int + required: true + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort" + schema: + type: int + min: 9000 + max: 65535 + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + - variable: html + label: "App html Storage" + description: "Stores the Application html." + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Type of Storage" + description: "Sets the persistence type, Anything other than PVC could break rollback!" + schema: + type: string + default: "simplePVC" + enum: + - value: "simplePVC" + description: "PVC (simple)" + - value: "simpleHP" + description: "HostPath (simple)" + - value: "emptyDir" + description: "emptyDir" + - value: "pvc" + description: "pvc" + - value: "hostPath" + description: "hostPath" + - value: "nfs" + description: "NFS Share" + - variable: server + label: "NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: "Path on NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissionsSimple + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "simpleHP"]] + type: boolean + default: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPathSimple + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: medium + label: "EmptyDir Medium" + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: size + label: "Size quotum of storage" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "999Gi" + - variable: hostPathType + label: "(Advanced) hostPath Type" + schema: + show_if: [["type", "=", "hostPath"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "DirectoryOrCreate" + description: "DirectoryOrCreate" + - value: "Directory" + description: "Directory" + - value: "FileOrCreate" + description: "FileOrCreate" + - value: "File" + description: "File" + - value: "Socket" + description: "Socket" + - value: "CharDevice" + description: "CharDevice" + - value: "BlockDevice" + description: "BlockDevice" + - variable: storageClass + label: "(Advanced) storageClass" + description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "SCALE-ZFS" + - variable: accessMode + label: "(Advanced) Access Mode" + description: "Allow or disallow multiple PVC's writhing to the same PV" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: advanced + label: "Show Advanced Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: data + label: "UserData Storage" + description: "Stores the User Data." + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Type of Storage" + description: "Sets the persistence type, Anything other than PVC could break rollback!" + schema: + type: string + default: "simplePVC" + enum: + - value: "simplePVC" + description: "PVC (simple)" + - value: "simpleHP" + description: "HostPath (simple)" + - value: "emptyDir" + description: "emptyDir" + - value: "pvc" + description: "pvc" + - value: "hostPath" + description: "hostPath" + - value: "nfs" + description: "NFS Share" + - variable: server + label: "NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: "Path on NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissionsSimple + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "simpleHP"]] + type: boolean + default: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPathSimple + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: medium + label: "EmptyDir Medium" + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: size + label: "Size quotum of storage" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "999Gi" + - variable: hostPathType + label: "(Advanced) hostPath Type" + schema: + show_if: [["type", "=", "hostPath"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "DirectoryOrCreate" + description: "DirectoryOrCreate" + - value: "Directory" + description: "Directory" + - value: "FileOrCreate" + description: "FileOrCreate" + - value: "File" + description: "File" + - value: "Socket" + description: "Socket" + - value: "CharDevice" + description: "CharDevice" + - value: "BlockDevice" + description: "BlockDevice" + - variable: storageClass + label: "(Advanced) storageClass" + description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "SCALE-ZFS" + - variable: accessMode + label: "(Advanced) Access Mode" + description: "Allow or disallow multiple PVC's writhing to the same PV" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: advanced + label: "Show Advanced Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: persistenceList + label: "Additional app storage" + group: "Storage and Persistence" + schema: + type: list + default: [] + items: + - variable: persistenceListEntry + label: "Custom Storage" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the storage" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name (optional)" + description: "Not required, please set to config when mounting /config or temp when mounting /tmp" + schema: + type: string + - variable: type + label: "Type of Storage" + description: "Sets the persistence type, Anything other than PVC could break rollback!" + schema: + type: string + default: "simpleHP" + enum: + - value: "simplePVC" + description: "PVC (simple)" + - value: "simpleHP" + description: "HostPath (simple)" + - value: "emptyDir" + description: "emptyDir" + - value: "pvc" + description: "pvc" + - value: "hostPath" + description: "hostPath" + - value: "nfs" + description: "NFS Share" + - variable: server + label: "NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: "Path on NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissionsSimple + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "simpleHP"]] + type: boolean + default: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPathSimple + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: "mountPath" + description: "Path inside the container the storage is mounted" + schema: + type: string + default: "" + required: true + valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$' + - variable: medium + label: "EmptyDir Medium" + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: size + label: "Size quotum of storage" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "999Gi" + - variable: hostPathType + label: "(Advanced) hostPath Type" + schema: + show_if: [["type", "=", "hostPath"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "DirectoryOrCreate" + description: "DirectoryOrCreate" + - value: "Directory" + description: "Directory" + - value: "FileOrCreate" + description: "FileOrCreate" + - value: "File" + description: "File" + - value: "Socket" + description: "Socket" + - value: "CharDevice" + description: "CharDevice" + - value: "BlockDevice" + description: "BlockDevice" + - variable: storageClass + label: "(Advanced) storageClass" + description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "SCALE-ZFS" + - variable: accessMode + label: "(Advanced) Access Mode" + description: "Allow or disallow multiple PVC's writhing to the same PV" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: advanced + label: "Show Advanced Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable Ingress" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: "Hosts" + schema: + type: list + default: [] + items: + - variable: hostEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: "HostName" + schema: + type: string + default: "" + required: true + - variable: paths + label: "Paths" + schema: + type: list + default: [] + items: + - variable: pathEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: "path" + schema: + type: string + required: true + default: "/" + - variable: pathType + label: "pathType" + schema: + type: string + required: true + default: "Prefix" + + - variable: tls + label: "TLS-Settings" + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: "Certificate Hosts" + schema: + type: list + default: [] + items: + - variable: host + label: "Host" + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: "Select TrueNAS SCALE Certificate" + schema: + type: int + $ref: + - "definitions/certificate" + + - variable: entrypoint + label: "(Advanced) Traefik Entrypoint" + description: "Entrypoint used by Traefik when using Traefik as Ingress Provider" + schema: + type: string + default: "websecure" + required: true + - variable: middlewares + label: "Traefik Middlewares" + description: "Add previously created Traefik Middlewares to this Ingress" + schema: + type: list + default: [] + items: + - variable: name + label: "Name" + schema: + type: string + default: "" + required: true + + - variable: expert + label: "Show Expert Configuration Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enableFixedMiddlewares + description: "These middlewares enforce a number of best practices." + label: "Enable Default Middlewares" + schema: + type: boolean + default: true + - variable: ingressClassName + label: "IngressClass Name" + schema: + type: string + default: "" + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: ingressList + label: "Add Manual Custom Ingresses" + group: "Ingress" + schema: + type: list + default: [] + items: + - variable: ingressListEntry + label: "Custom Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable Ingress" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name" + schema: + type: string + default: "" + - variable: ingressClassName + label: "IngressClass Name" + schema: + type: string + default: "" + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: hosts + label: "Hosts" + schema: + type: list + default: [] + items: + - variable: hostEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: "HostName" + schema: + type: string + default: "" + required: true + - variable: paths + label: "Paths" + schema: + type: list + default: [] + items: + - variable: pathEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: "path" + schema: + type: string + required: true + default: "/" + - variable: pathType + label: "pathType" + schema: + type: string + required: true + default: "Prefix" + - variable: service + label: "Linked Service" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Service Name" + schema: + type: string + default: "" + - variable: port + label: "Service Port" + schema: + type: int + - variable: tls + label: "TLS-Settings" + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: "Certificate Hosts" + schema: + type: list + default: [] + items: + - variable: host + label: "Host" + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: "Select TrueNAS SCALE Certificate" + schema: + type: int + $ref: + - "definitions/certificate" + - variable: entrypoint + label: "Traefik Entrypoint" + description: "Entrypoint used by Traefik when using Traefik as Ingress Provider" + schema: + type: string + default: "websecure" + required: true + - variable: middlewares + label: "Traefik Middlewares" + description: "Add previously created Traefik Middlewares to this Ingress" + schema: + type: list + default: [] + items: + - variable: name + label: "Name" + schema: + type: string + default: "" + required: true + + - variable: security + label: "Container Security Settings" + group: "Security and Permissions" + schema: + type: dict + additional_attrs: true + attrs: + - variable: editsecurity + label: "Change PUID / UMASK values" + description: "By enabling this you override default set values." + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: PUID + label: "Process User ID - PUID" + description: "When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "When supported by the container, this sets the UMASK for tha App. Not supported by all Apps" + schema: + type: string + default: "002" + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false + - variable: capabilities + label: "Capabilities" + schema: + additional_attrs: true + type: dict + attrs: + - variable: drop + label: "Drop Capability" + schema: + type: list + default: [] + items: + - variable: dropEntry + label: "" + schema: + type: string + - variable: add + label: "Add Capability" + schema: + type: list + default: [] + items: + - variable: addEntry + label: "" + schema: + type: string + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 33 + - variable: fsGroupChangePolicy + label: "When should we take ownership?" + schema: + type: string + default: "OnRootMismatch" + enum: + - value: "OnRootMismatch" + description: "OnRootMismatch" + - value: "Always" + description: "Always" + - variable: supplementalGroups + label: "supplemental Groups" + schema: + type: list + default: [] + items: + - variable: supplementalGroupsEntry + label: "supplemental Group" + schema: + type: int + + + - variable: advancedresources + label: "Set Custom Resource Limits/Requests (Advanced)" + group: "Resources and Devices" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: resources + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: "Advanced Limit Resource Consumption" + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: "CPU" + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "4000m" + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "8Gi" + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: requests + label: "Minimum Resources Required (request)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: "CPU" + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "10m" + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "50Mi" + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + + - variable: deviceList + label: "Mount USB devices" + group: "Resources and Devices" + schema: + type: list + default: [] + items: + - variable: deviceListEntry + label: "Device" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the storage" + schema: + type: boolean + default: true + - variable: type + label: "(Advanced) Type of Storage" + description: "Sets the persistence type" + schema: + type: string + default: "hostPath" + hidden: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPath + label: "Host Device Path" + description: "Path to the device on the host system" + schema: + type: path + - variable: mountPath + label: "Container Device Path" + description: "Path inside the container the device is mounted" + schema: + type: string + default: "/dev/ttyACM0" + + # Specify GPU configuration + - variable: scaleGPU + label: "GPU Configuration" + group: "Resources and Devices" + schema: + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + +# - variable: autoscaling +# group: "Advanced" +# label: "(Advanced) Horizontal Pod Autoscaler" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: enabled +# label: "enabled" +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: target +# label: "Target" +# description: "deployment name, defaults to main deployment" +# schema: +# type: string +# default: "" +# - variable: minReplicas +# label: "Minimum Replicas" +# schema: +# type: int +# default: 1 +# - variable: maxReplicas +# label: "Maximum Replicas" +# schema: +# type: int +# default: 5 +# - variable: targetCPUUtilizationPercentage +# label: "Target CPU Utilization Percentage" +# schema: +# type: int +# default: 80 +# - variable: targetMemoryUtilizationPercentage +# label: "Target Memory Utilization Percentage" +# schema: +# type: int +# default: 80 +# - variable: networkPolicy +# group: "Advanced" +# label: "(Advanced) Network Policy" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: enabled +# label: "enabled" +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: policyType +# label: "Policy Type" +# schema: +# type: string +# default: "" +# enum: +# - value: "" +# description: "Default" +# - value: "ingress" +# description: "Ingress" +# - value: "egress" +# description: "Egress" +# - value: "ingress-egress" +# description: "Ingress and Egress" +# - variable: egress +# label: "Egress" +# schema: +# type: list +# default: [] +# items: +# - variable: egressEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: to +# label: "To" +# schema: +# type: list +# default: [] +# items: +# - variable: toEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: ipBlock +# label: "ipBlock" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: cidr +# label: "cidr" +# schema: +# type: string +# default: "" +# - variable: except +# label: "except" +# schema: +# type: list +# default: [] +# items: +# - variable: exceptint +# label: "" +# schema: +# type: string +# - variable: namespaceSelector +# label: "namespaceSelector" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: podSelector +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: ports +# label: "Ports" +# schema: +# type: list +# default: [] +# items: +# - variable: portsEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: port +# label: "port" +# schema: +# type: int +# - variable: endPort +# label: "port" +# schema: +# type: int +# - variable: protocol +# label: "Protocol" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "TCP" +# description: "TCP" +# - value: "UDP" +# description: "UDP" +# - value: "SCTP" +# description: "SCTP" +# - variable: ingress +# label: "Ingress" +# schema: +# type: list +# default: [] +# items: +# - variable: ingressEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: from +# label: "From" +# schema: +# type: list +# default: [] +# items: +# - variable: fromEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: ipBlock +# label: "ipBlock" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: cidr +# label: "cidr" +# schema: +# type: string +# default: "" +# - variable: except +# label: "except" +# schema: +# type: list +# default: [] +# items: +# - variable: exceptint +# label: "" +# schema: +# type: string +# - variable: namespaceSelector +# label: "namespaceSelector" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: podSelector +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: ports +# label: "Ports" +# schema: +# type: list +# default: [] +# items: +# - variable: portsEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: port +# label: "port" +# schema: +# type: int +# - variable: endPort +# label: "port" +# schema: +# type: int +# - variable: protocol +# label: "Protocol" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "TCP" +# description: "TCP" +# - value: "UDP" +# description: "UDP" +# - value: "SCTP" +# description: "SCTP" + + + - variable: addons + group: "Addons" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: vpn + label: "VPN" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Type" + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: "disabled" + - value: "openvpn" + description: "OpenVPN" + - value: "wireguard" + description: "Wireguard" + - variable: openvpn + label: "OpenVPN Settings" + schema: + type: dict + show_if: [["type", "=", "openvpn"]] + attrs: + - variable: username + label: "authentication username" + description: "authentication username, optional" + schema: + type: string + default: "" + - variable: password + label: "authentication password" + description: "authentication credentials" + schema: + type: string + default: "" + required: true + - variable: killSwitch + label: "Enable killswitch" + schema: + type: boolean + show_if: [["type", "!=", "disabled"]] + default: true + - variable: excludedNetworks_IPv4 + label: "Killswitch Excluded IPv4 networks" + description: "list of killswitch excluded ipv4 addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv4 + label: "IPv4 Network" + schema: + type: string + required: true + - variable: excludedNetworks_IPv6 + label: "Killswitch Excluded IPv6 networks" + description: "list of killswitch excluded ipv4 addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv6 + label: "IPv6 Network" + schema: + type: string + required: true + + - variable: configFile + label: "VPN Config File Location" + schema: + type: dict + show_if: [["type", "!=", "disabled"]] + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: true + hidden: true + - variable: type + label: "type" + schema: + type: string + default: "hostPath" + hidden: true + - variable: hostPathType + label: "hostPathType" + schema: + type: string + default: "File" + hidden: true + - variable: noMount + label: "noMount" + schema: + type: boolean + default: true + hidden: true + - variable: hostPath + label: "Full path to file" + description: "path to your local VPN config file for example: /mnt/tank/vpn.conf or /mnt/tank/vpn.ovpn" + schema: + type: string + default: "" + required: true + - variable: envList + label: "VPN environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + - variable: codeserver + label: "Codeserver" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: git + label: "Git Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: deployKey + description: "Raw SSH private key" + label: "deployKey" + schema: + type: string + - variable: deployKeyBase64 + description: "Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence" + label: "deployKeyBase64" + schema: + type: string + - variable: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "NodePort" + enum: + - value: "NodePort" + description: "NodePort" + - value: "ClusterIP" + description: "ClusterIP" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: nodePort + description: "leave empty to disable" + label: "nodePort" + schema: + type: int + default: 36107 + - variable: envList + label: "Codeserver environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + + - variable: promtail + label: "Promtail" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: loki + label: "Loki URL" + schema: + type: string + required: true + - variable: logs + label: "Log Paths" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: path + label: "Path" + schema: + type: string + required: true + - variable: args + label: "Promtail ecommand line arguments" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: arg + label: "Arg" + schema: + type: string + required: true + - variable: envList + label: "Promtail environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + + + + - variable: netshoot + label: "Netshoot" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: envList + label: "Netshoot environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true diff --git a/stable/nextcloud/15.2.27/templates/_configmap.tpl b/stable/nextcloud/15.2.27/templates/_configmap.tpl new file mode 100644 index 0000000000..abe500d31e --- /dev/null +++ b/stable/nextcloud/15.2.27/templates/_configmap.tpl @@ -0,0 +1,36 @@ +{{/* Define the configmap */}} +{{- define "nextcloud.configmap" -}} + +{{- $hosts := "" }} +{{- if .Values.ingress.main.enabled }} +{{- range .Values.ingress }} +{{- range $index, $host := .hosts }} + {{- if $index }} + {{ $hosts = ( printf "%v %v" $hosts $host.host ) }} + {{- else }} + {{ $hosts = ( printf "%s" $host.host ) }} + {{- end }} +{{- end }} +{{- end }} +{{- end }} + + +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: nextcloudconfig +data: + {{- $aliasgroup1 := ( printf "http://%s" ( .Values.env.AccessIP | default ( printf "%v-%v" .Release.Name "nextcloud" ) ) ) }} + {{- if .Values.ingress.main.enabled }} + {{- with (first .Values.ingress.main.hosts) }} + {{- $aliasgroup1 = ( printf "https://%s" .host ) }} + {{- end }} + {{- end }} + aliasgroup1: {{ $aliasgroup1 }} + NEXTCLOUD_TRUSTED_DOMAINS: {{ ( printf "%v %v %v %v %v %v %v %v" "test.fakedomain.dns" "localhost" "127.0.0.1" ( printf "%v:%v" "127.0.0.1" .Values.service.main.ports.main.port ) ( .Values.env.AccessIP | default "localhost" ) ( printf "%v-%v" .Release.Name "nextcloud" ) ( printf "%v-%v" .Release.Name "nextcloud-backend" ) $hosts ) | quote }} + {{- if .Values.ingress.main.enabled }} + APACHE_DISABLE_REWRITE_IP: "1" + {{- end }} + +{{- end -}} diff --git a/stable/nextcloud/15.2.27/templates/_cronjob.tpl b/stable/nextcloud/15.2.27/templates/_cronjob.tpl new file mode 100644 index 0000000000..302f3b83aa --- /dev/null +++ b/stable/nextcloud/15.2.27/templates/_cronjob.tpl @@ -0,0 +1,64 @@ +{{/* Define the cronjob */}} +{{- define "nextcloud.cronjob" -}} +{{- if .Values.cronjob.enabled -}} +{{- $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.cronjob.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: '{{ include "tc.common.images.selector" . }}' + imagePullPolicy: {{ default .Values.image.pullPolicy }} + command: + - "/bin/sh" + - "-c" + - | + /bin/bash <<'EOF' + echo "running nextcloud cronjob..." + php -f /var/www/html/cron.php + echo "cronjob finished" + {{- if .Values.cronjob.generatePreviews }} + echo "Pre-generating Previews..." + php /var/www/html/occ preview:pre-generate + echo "Previews generated." + {{- end }} + EOF + # Will mount configuration files as www-data (id: 33) by default for nextcloud + {{- with (include "tc.common.controller.volumeMounts" . | trim) }} + volumeMounts: + {{ nindent 16 . }} + {{- end }} + securityContext: + runAsUser: 33 + runAsGroup: 33 + readOnlyRootFilesystem: true + runAsNonRoot: true + resources: +{{ toYaml .Values.resources | indent 16 }} +{{- end -}} +{{- end -}} diff --git a/stable/nextcloud/15.2.27/templates/_hpb.tpl b/stable/nextcloud/15.2.27/templates/_hpb.tpl new file mode 100644 index 0000000000..617bab9d8a --- /dev/null +++ b/stable/nextcloud/15.2.27/templates/_hpb.tpl @@ -0,0 +1,133 @@ +{{/* Define the hbp container */}} +{{- define "nextcloud.hpb" -}} +{{- $jobName := include "tc.common.names.fullname" . }} +image: '{{ include "tc.common.images.selector" . }}' +imagePullPolicy: '{{ .Values.image.pullPolicy }}' +securityContext: + runAsUser: 33 + runAsGroup: 33 + readOnlyRootFilesystem: true + runAsNonRoot: true +{{- with (include "tc.common.controller.volumeMounts" . | trim) }} +volumeMounts: + {{ nindent 2 . }} +{{- end }} +ports: + - containerPort: 7867 +readinessProbe: + httpGet: + path: /push/test/cookie + port: 7867 + httpHeaders: + - name: Host + value: "test.fakedomain.dns" + initialDelaySeconds: {{ .Values.probes.readiness.spec.initialDelaySeconds }} + periodSeconds: {{ .Values.probes.readiness.spec.periodSeconds }} + timeoutSeconds: {{ .Values.probes.readiness.spec.timeoutSeconds }} + failureThreshold: {{ .Values.probes.readiness.spec.failureThreshold }} +livenessProbe: + httpGet: + path: /push/test/cookie + port: 7867 + httpHeaders: + - name: Host + value: "test.fakedomain.dns" + initialDelaySeconds: {{ .Values.probes.liveness.spec.initialDelaySeconds }} + periodSeconds: {{ .Values.probes.liveness.spec.periodSeconds }} + timeoutSeconds: {{ .Values.probes.liveness.spec.timeoutSeconds }} + failureThreshold: {{ .Values.probes.liveness.spec.failureThreshold }} +startupProbe: + httpGet: + path: /push/test/cookie + port: 7867 + httpHeaders: + - name: Host + value: "test.fakedomain.dns" + initialDelaySeconds: {{ .Values.probes.startup.spec.initialDelaySeconds }} + periodSeconds: {{ .Values.probes.startup.spec.periodSeconds }} + timeoutSeconds: {{ .Values.probes.startup.spec.timeoutSeconds }} + failureThreshold: {{ .Values.probes.startup.spec.failureThreshold }} +command: + - "/bin/sh" + - "-c" + - | + /bin/bash <<'EOF' + set -m + echo "Waiting for notify_push file to be available..." + until [ -f /var/www/html/custom_apps/notify_push/bin/x86_64/notify_push ] + do + sleep 10 + echo "Notify_push not found... waiting..." + done + echo "Waiting for Nextcloud to start..." + until $(curl --output /dev/null --silent --head --fail -H "Host: test.fakedomain.dns" http://127.0.0.1:8080/status.php); do + echo "Nextcloud not found... waiting..." + sleep 10 + done + until $(curl --silent --fail -H "Host: test.fakedomain.dns" http://127.0.0.1:8080/status.php | jq --raw-output '.installed' | grep "true"); do + echo "Nextcloud not installed... waiting..." + sleep 10 + done + echo "Nextcloud instance with Notify_push found... Launching High Performance Backend..." + /var/www/html/custom_apps/notify_push/bin/x86_64/notify_push /var/www/html/config/config.php & + + {{- if .Values.imaginary.enabled }} + echo "Imaginary High Performance Previews enabled, enabling it on Nextcloud..." + php /var/www/html/occ config:system:set enabledPreviewProviders 6 --value='OC\Preview\Imaginary' + php /var/www/html/occ config:system:set preview_imaginary_url --value='http://127.0.0.1:9090' + {{- end }} + + until $(curl --output /dev/null --silent --head --fail -H "Host: test.fakedomain.dns" http://127.0.0.1:7867/push/test/cookie); do + echo "High Performance Backend not running ... waiting..." + sleep 10 + done + {{- $accessurl := ( printf "http://%v:%v" ( .Values.env.AccessIP | default ( printf "%v-%v" .Release.Name "nextcloud" ) ) .Values.service.main.ports.main.port ) }} + {{- if .Values.ingress.main.enabled }} + {{- with (first .Values.ingress.main.hosts) }} + {{- $accessurl = ( printf "https://%s" .host ) }} + {{- end }} + {{- end }} + until $(curl --output /dev/null --silent --head --fail {{ $accessurl }}/push/test/cookie); do + echo "High Performance Backend service not accessable ... waiting..." + sleep 10 + done + echo "High Performance Backend found..." + echo "Configuring High Performance Backend for url: {{ $accessurl }}" + php /var/www/html/occ notify_push:setup {{ $accessurl }}/push + fg + EOF +env: + - name: NEXTCLOUD_URL + value: 'http://127.0.0.1:8080' + - name: METRICS_PORT + value: '7868' + - name: TRUSTED_PROXIES + value: "{{ .Values.env.TRUSTED_PROXIES }}" + - name: POSTGRES_DB + value: "{{ .Values.postgresql.postgresqlDatabase }}" + - name: POSTGRES_USER + value: "{{ .Values.postgresql.postgresqlUsername }}" + - name: POSTGRES_PASSWORD + valueFrom: + secretKeyRef: + name: dbcreds + key: postgresql-password + - name: POSTGRES_HOST + valueFrom: + secretKeyRef: + name: dbcreds + key: plainporthost + - name: REDIS_HOST + valueFrom: + secretKeyRef: + name: rediscreds + key: plainhost + - name: REDIS_HOST_PASSWORD + valueFrom: + secretKeyRef: + name: rediscreds + key: redis-password +envFrom: + - configMapRef: + name: nextcloudconfig +{{- end -}} diff --git a/stable/nextcloud/15.2.27/templates/_imaginary.tpl b/stable/nextcloud/15.2.27/templates/_imaginary.tpl new file mode 100644 index 0000000000..57a72c4302 --- /dev/null +++ b/stable/nextcloud/15.2.27/templates/_imaginary.tpl @@ -0,0 +1,40 @@ +{{/* Define the imaginary container */}} +{{- define "nextcloud.imaginary" -}} +image: {{ .Values.imaginaryImage.repository }}:{{ .Values.imaginaryImage.tag }} +imagePullPolicy: '{{ .Values.image.pullPolicy }}' +securityContext: + runAsUser: 33 + runAsGroup: 33 + readOnlyRootFilesystem: true + runAsNonRoot: true +ports: + - containerPort: 9090 +args: ["-enable-url-source"] +env: + - name: 'PORT' + value: '9090' +readinessProbe: + httpGet: + path: / + port: 9090 + initialDelaySeconds: {{ .Values.probes.readiness.spec.initialDelaySeconds }} + periodSeconds: {{ .Values.probes.readiness.spec.periodSeconds }} + timeoutSeconds: {{ .Values.probes.readiness.spec.timeoutSeconds }} + failureThreshold: {{ .Values.probes.readiness.spec.failureThreshold }} +livenessProbe: + httpGet: + path: / + port: 9090 + initialDelaySeconds: {{ .Values.probes.liveness.spec.initialDelaySeconds }} + periodSeconds: {{ .Values.probes.liveness.spec.periodSeconds }} + timeoutSeconds: {{ .Values.probes.liveness.spec.timeoutSeconds }} + failureThreshold: {{ .Values.probes.liveness.spec.failureThreshold }} +startupProbe: + httpGet: + path: / + port: 9090 + initialDelaySeconds: {{ .Values.probes.startup.spec.initialDelaySeconds }} + periodSeconds: {{ .Values.probes.startup.spec.periodSeconds }} + timeoutSeconds: {{ .Values.probes.startup.spec.timeoutSeconds }} + failureThreshold: {{ .Values.probes.startup.spec.failureThreshold }} +{{- end -}} diff --git a/stable/nextcloud/15.2.27/templates/_nginx.tpl b/stable/nextcloud/15.2.27/templates/_nginx.tpl new file mode 100644 index 0000000000..df427f44bd --- /dev/null +++ b/stable/nextcloud/15.2.27/templates/_nginx.tpl @@ -0,0 +1,54 @@ +{{/* Define the nginx container */}} +{{- define "nextcloud.nginx" -}} +image: {{ .Values.nginxImage.repository }}:{{ .Values.nginxImage.tag }} +imagePullPolicy: '{{ .Values.image.pullPolicy }}' +securityContext: + runAsUser: 33 + runAsGroup: 33 + readOnlyRootFilesystem: true + runAsNonRoot: true +{{- with (include "tc.common.controller.volumeMounts" . | trim) }} +volumeMounts: + {{ nindent 2 . }} +{{- end }} + - mountPath: /etc/nginx/nginx.conf + name: nginx + readOnly: true + subPath: nginx.conf +ports: + - containerPort: 8080 + +readinessProbe: + httpGet: + path: /robots.txt + port: 8080 + httpHeaders: + - name: Host + value: "test.fakedomain.dns" + initialDelaySeconds: {{ .Values.probes.readiness.spec.initialDelaySeconds }} + periodSeconds: {{ .Values.probes.readiness.spec.periodSeconds }} + timeoutSeconds: {{ .Values.probes.readiness.spec.timeoutSeconds }} + failureThreshold: {{ .Values.probes.readiness.spec.failureThreshold }} +livenessProbe: + httpGet: + path: /robots.txt + port: 8080 + httpHeaders: + - name: Host + value: "test.fakedomain.dns" + initialDelaySeconds: {{ .Values.probes.liveness.spec.initialDelaySeconds }} + periodSeconds: {{ .Values.probes.liveness.spec.periodSeconds }} + timeoutSeconds: {{ .Values.probes.liveness.spec.timeoutSeconds }} + failureThreshold: {{ .Values.probes.liveness.spec.failureThreshold }} +startupProbe: + httpGet: + path: /robots.txt + port: 8080 + httpHeaders: + - name: Host + value: "test.fakedomain.dns" + initialDelaySeconds: {{ .Values.probes.startup.spec.initialDelaySeconds }} + periodSeconds: {{ .Values.probes.startup.spec.periodSeconds }} + timeoutSeconds: {{ .Values.probes.startup.spec.timeoutSeconds }} + failureThreshold: {{ .Values.probes.startup.spec.failureThreshold }} +{{- end -}} diff --git a/stable/nextcloud/15.2.27/templates/common.yaml b/stable/nextcloud/15.2.27/templates/common.yaml new file mode 100644 index 0000000000..9314524b1a --- /dev/null +++ b/stable/nextcloud/15.2.27/templates/common.yaml @@ -0,0 +1,22 @@ +{{/* Make sure all variables are set properly */}} +{{- include "tc.common.loader.init" . }} + +{{/* Render configmap for nextcloud */}} +{{- include "nextcloud.configmap" . }} + +{{- $newMiddlewares := append .Values.ingress.main.fixedMiddlewares "tc-nextcloud-chain" }} +{{- $_ := set .Values.ingress.main "fixedMiddlewares" $newMiddlewares -}} + +{{- $_ := set .Values.additionalContainers "nginx" (include "nextcloud.nginx" . | fromYaml) -}} +{{- if .Values.imaginary.enabled -}} +{{- $_ := set .Values.additionalContainers "imaginary" (include "nextcloud.imaginary" . | fromYaml) -}} +{{- end -}} +{{- if .Values.hpb.enabled -}} +{{- $_ := set .Values.additionalContainers "hpb" (include "nextcloud.hpb" . | fromYaml) -}} +{{- end -}} + +{{/* Render the templates */}} +{{ include "tc.common.loader.apply" . }} + +{{/* Render cronjob for nextcloud */}} +{{- include "nextcloud.cronjob" . }} diff --git a/stable/rsshub/3.0.49/values.yaml b/stable/nextcloud/15.2.27/values.yaml similarity index 100% rename from stable/rsshub/3.0.49/values.yaml rename to stable/nextcloud/15.2.27/values.yaml diff --git a/stable/omada-controller/6.0.38/Chart.lock b/stable/omada-controller/6.0.38/Chart.lock deleted file mode 100644 index 0cd1d65900..0000000000 --- a/stable/omada-controller/6.0.38/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.7 -digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f -generated: "2022-07-24T09:26:58.401101638Z" diff --git a/stable/omada-controller/6.0.38/CHANGELOG.md b/stable/omada-controller/6.0.39/CHANGELOG.md similarity index 92% rename from stable/omada-controller/6.0.38/CHANGELOG.md rename to stable/omada-controller/6.0.39/CHANGELOG.md index 3b90e37721..bba819dbe4 100644 --- a/stable/omada-controller/6.0.38/CHANGELOG.md +++ b/stable/omada-controller/6.0.39/CHANGELOG.md @@ -2,6 +2,15 @@ +## [omada-controller-6.0.39](https://github.com/truecharts/apps/compare/omada-controller-6.0.38...omada-controller-6.0.39) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [omada-controller-6.0.38](https://github.com/truecharts/apps/compare/omada-controller-6.0.36...omada-controller-6.0.38) (2022-07-24) ### Chore @@ -88,12 +97,3 @@ ## [omada-controller-6.0.29](https://github.com/truecharts/apps/compare/omada-controller-6.0.27...omada-controller-6.0.29) (2022-07-14) -### Fix - -- bump to ensure .helmignore is present on all Charts - - - -## [omada-controller-6.0.27](https://github.com/truecharts/apps/compare/omada-controller-6.0.26...omada-controller-6.0.27) (2022-07-14) - -### Chore diff --git a/stable/omada-controller/6.0.39/Chart.lock b/stable/omada-controller/6.0.39/Chart.lock new file mode 100644 index 0000000000..03d7b61fc8 --- /dev/null +++ b/stable/omada-controller/6.0.39/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f +generated: "2022-07-25T14:44:40.563046112Z" diff --git a/stable/omada-controller/6.0.38/Chart.yaml b/stable/omada-controller/6.0.39/Chart.yaml similarity index 98% rename from stable/omada-controller/6.0.38/Chart.yaml rename to stable/omada-controller/6.0.39/Chart.yaml index 6d1e2d0219..75d669c5da 100644 --- a/stable/omada-controller/6.0.38/Chart.yaml +++ b/stable/omada-controller/6.0.39/Chart.yaml @@ -18,7 +18,7 @@ name: omada-controller sources: - https://github.com/mbentley/docker-omada-controller - https://github.com/truecharts/apps/tree/master/charts/omada-controller -version: 6.0.38 +version: 6.0.39 annotations: truecharts.org/catagories: | - media diff --git a/stable/omada-controller/6.0.38/README.md b/stable/omada-controller/6.0.39/README.md similarity index 98% rename from stable/omada-controller/6.0.38/README.md rename to stable/omada-controller/6.0.39/README.md index ad7810929e..07dfd6f795 100644 --- a/stable/omada-controller/6.0.38/README.md +++ b/stable/omada-controller/6.0.39/README.md @@ -1,6 +1,6 @@ # omada-controller -![Version: 6.0.38](https://img.shields.io/badge/Version-6.0.38-informational?style=flat-square) ![AppVersion: 5.3](https://img.shields.io/badge/AppVersion-5.3-informational?style=flat-square) +![Version: 6.0.39](https://img.shields.io/badge/Version-6.0.39-informational?style=flat-square) ![AppVersion: 5.3](https://img.shields.io/badge/AppVersion-5.3-informational?style=flat-square) Omada is a SDN tool for TP-Link Omada hardware diff --git a/stable/omada-controller/6.0.38/app-readme.md b/stable/omada-controller/6.0.39/app-readme.md similarity index 100% rename from stable/omada-controller/6.0.38/app-readme.md rename to stable/omada-controller/6.0.39/app-readme.md diff --git a/stable/sickchill/3.0.24/charts/common-10.4.7.tgz b/stable/omada-controller/6.0.39/charts/common-10.4.7.tgz similarity index 100% rename from stable/sickchill/3.0.24/charts/common-10.4.7.tgz rename to stable/omada-controller/6.0.39/charts/common-10.4.7.tgz diff --git a/stable/omada-controller/6.0.38/ix_values.yaml b/stable/omada-controller/6.0.39/ix_values.yaml similarity index 93% rename from stable/omada-controller/6.0.38/ix_values.yaml rename to stable/omada-controller/6.0.39/ix_values.yaml index 562c5e765b..00b3cfb17d 100644 --- a/stable/omada-controller/6.0.38/ix_values.yaml +++ b/stable/omada-controller/6.0.39/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/omada-controller - tag: v5.3@sha256:ccbd4af9110ee1e424b605cf979e24fdc0ca929f8df22029e136ceaad3985d56 + tag: v5.3@sha256:e91f341cf85fcf12eea78dd03ca08757487a85ca3fc8998ec837ac8272fb950b pullPolicy: IfNotPresent securityContext: diff --git a/stable/omada-controller/6.0.38/questions.yaml b/stable/omada-controller/6.0.39/questions.yaml similarity index 100% rename from stable/omada-controller/6.0.38/questions.yaml rename to stable/omada-controller/6.0.39/questions.yaml diff --git a/stable/omada-controller/6.0.39/templates/common.yaml b/stable/omada-controller/6.0.39/templates/common.yaml new file mode 100644 index 0000000000..c1a366e1cf --- /dev/null +++ b/stable/omada-controller/6.0.39/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.common.loader.all" . }} diff --git a/stable/sickchill/3.0.24/values.yaml b/stable/omada-controller/6.0.39/values.yaml similarity index 100% rename from stable/sickchill/3.0.24/values.yaml rename to stable/omada-controller/6.0.39/values.yaml diff --git a/stable/prometheus/4.0.46/CHANGELOG.md b/stable/prometheus/4.0.47/CHANGELOG.md similarity index 92% rename from stable/prometheus/4.0.46/CHANGELOG.md rename to stable/prometheus/4.0.47/CHANGELOG.md index 54c39cb84c..028fc04d62 100644 --- a/stable/prometheus/4.0.46/CHANGELOG.md +++ b/stable/prometheus/4.0.47/CHANGELOG.md @@ -2,6 +2,15 @@ +## [prometheus-4.0.47](https://github.com/truecharts/apps/compare/prometheus-4.0.46...prometheus-4.0.47) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [prometheus-4.0.46](https://github.com/truecharts/apps/compare/prometheus-4.0.44...prometheus-4.0.46) (2022-07-24) ### Chore @@ -88,12 +97,3 @@ ## [prometheus-4.0.39](https://github.com/truecharts/apps/compare/uptimerobot-prometheus-4.0.20...prometheus-4.0.39) (2022-07-20) - -### Chore - -- update docker general non-major ([#3222](https://github.com/truecharts/apps/issues/3222)) - - - -## [prometheus-4.0.38](https://github.com/truecharts/apps/compare/prometheus-4.0.37...prometheus-4.0.38) (2022-07-19) - diff --git a/stable/prometheus/4.0.46/Chart.lock b/stable/prometheus/4.0.47/Chart.lock similarity index 89% rename from stable/prometheus/4.0.46/Chart.lock rename to stable/prometheus/4.0.47/Chart.lock index 8bf890bb30..204e8c362e 100644 --- a/stable/prometheus/4.0.46/Chart.lock +++ b/stable/prometheus/4.0.47/Chart.lock @@ -9,4 +9,4 @@ dependencies: repository: https://charts.bitnami.com/bitnami version: 3.1.1 digest: sha256:4c4decbe00c1a273a766ea39d9ade7a49310d2e0e29ef8a0fb5db98db8ede6f7 -generated: "2022-07-24T09:30:14.489668581Z" +generated: "2022-07-25T14:44:49.070202827Z" diff --git a/stable/prometheus/4.0.46/Chart.yaml b/stable/prometheus/4.0.47/Chart.yaml similarity index 98% rename from stable/prometheus/4.0.46/Chart.yaml rename to stable/prometheus/4.0.47/Chart.yaml index f6a0eb35c6..39526ce93c 100644 --- a/stable/prometheus/4.0.46/Chart.yaml +++ b/stable/prometheus/4.0.47/Chart.yaml @@ -28,7 +28,7 @@ sources: - https://github.com/prometheus-community/helm-charts - https://github.com/prometheus-operator/kube-prometheus type: application -version: 4.0.46 +version: 4.0.47 annotations: truecharts.org/catagories: | - metrics diff --git a/stable/prometheus/4.0.46/README.md b/stable/prometheus/4.0.47/README.md similarity index 98% rename from stable/prometheus/4.0.46/README.md rename to stable/prometheus/4.0.47/README.md index 3b47524bdc..3579770950 100644 --- a/stable/prometheus/4.0.46/README.md +++ b/stable/prometheus/4.0.47/README.md @@ -1,6 +1,6 @@ # prometheus -![Version: 4.0.46](https://img.shields.io/badge/Version-4.0.46-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.58.0](https://img.shields.io/badge/AppVersion-0.58.0-informational?style=flat-square) +![Version: 4.0.47](https://img.shields.io/badge/Version-4.0.47-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.58.0](https://img.shields.io/badge/AppVersion-0.58.0-informational?style=flat-square) kube-prometheus-stack collects Kubernetes manifests, Grafana dashboards, and Prometheus rules combined with documentation and scripts to provide easy to operate end-to-end Kubernetes cluster monitoring with Prometheus using the Prometheus Operator. diff --git a/stable/prometheus/4.0.46/app-readme.md b/stable/prometheus/4.0.47/app-readme.md similarity index 100% rename from stable/prometheus/4.0.46/app-readme.md rename to stable/prometheus/4.0.47/app-readme.md diff --git a/stable/prometheus/4.0.47/charts/common-10.4.7.tgz b/stable/prometheus/4.0.47/charts/common-10.4.7.tgz new file mode 100644 index 0000000000000000000000000000000000000000..5f8cfb60610d5ab519d212cb663ceca7e96b52c4 GIT binary patch literal 47356 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 AG5`Po literal 0 HcmV?d00001 diff --git a/stable/prometheus/4.0.46/charts/kube-state-metrics-3.1.1.tgz b/stable/prometheus/4.0.47/charts/kube-state-metrics-3.1.1.tgz similarity index 100% rename from stable/prometheus/4.0.46/charts/kube-state-metrics-3.1.1.tgz rename to stable/prometheus/4.0.47/charts/kube-state-metrics-3.1.1.tgz diff --git a/stable/prometheus/4.0.46/charts/node-exporter-3.0.4.tgz b/stable/prometheus/4.0.47/charts/node-exporter-3.0.4.tgz similarity index 100% rename from stable/prometheus/4.0.46/charts/node-exporter-3.0.4.tgz rename to stable/prometheus/4.0.47/charts/node-exporter-3.0.4.tgz diff --git a/stable/prometheus/4.0.46/crds/crd-alertmanager-config.yaml b/stable/prometheus/4.0.47/crds/crd-alertmanager-config.yaml similarity index 100% rename from stable/prometheus/4.0.46/crds/crd-alertmanager-config.yaml rename to stable/prometheus/4.0.47/crds/crd-alertmanager-config.yaml diff --git a/stable/prometheus/4.0.46/crds/crd-alertmanager.yaml b/stable/prometheus/4.0.47/crds/crd-alertmanager.yaml similarity index 100% rename from stable/prometheus/4.0.46/crds/crd-alertmanager.yaml rename to stable/prometheus/4.0.47/crds/crd-alertmanager.yaml diff --git a/stable/prometheus/4.0.46/crds/crd-podmonitor.yaml b/stable/prometheus/4.0.47/crds/crd-podmonitor.yaml similarity index 100% rename from stable/prometheus/4.0.46/crds/crd-podmonitor.yaml rename to stable/prometheus/4.0.47/crds/crd-podmonitor.yaml diff --git a/stable/prometheus/4.0.46/crds/crd-probes.yaml b/stable/prometheus/4.0.47/crds/crd-probes.yaml similarity index 100% rename from stable/prometheus/4.0.46/crds/crd-probes.yaml rename to stable/prometheus/4.0.47/crds/crd-probes.yaml diff --git a/stable/prometheus/4.0.46/crds/crd-prometheus.yaml b/stable/prometheus/4.0.47/crds/crd-prometheus.yaml similarity index 100% rename from stable/prometheus/4.0.46/crds/crd-prometheus.yaml rename to stable/prometheus/4.0.47/crds/crd-prometheus.yaml diff --git a/stable/prometheus/4.0.46/crds/crd-prometheusrules.yaml b/stable/prometheus/4.0.47/crds/crd-prometheusrules.yaml similarity index 100% rename from stable/prometheus/4.0.46/crds/crd-prometheusrules.yaml rename to stable/prometheus/4.0.47/crds/crd-prometheusrules.yaml diff --git a/stable/prometheus/4.0.46/crds/crd-servicemonitor.yaml b/stable/prometheus/4.0.47/crds/crd-servicemonitor.yaml similarity index 100% rename from stable/prometheus/4.0.46/crds/crd-servicemonitor.yaml rename to stable/prometheus/4.0.47/crds/crd-servicemonitor.yaml diff --git a/stable/prometheus/4.0.46/crds/crd-thanosrulers.yaml b/stable/prometheus/4.0.47/crds/crd-thanosrulers.yaml similarity index 100% rename from stable/prometheus/4.0.46/crds/crd-thanosrulers.yaml rename to stable/prometheus/4.0.47/crds/crd-thanosrulers.yaml diff --git a/stable/prometheus/4.0.46/ix_values.yaml b/stable/prometheus/4.0.47/ix_values.yaml similarity index 99% rename from stable/prometheus/4.0.46/ix_values.yaml rename to stable/prometheus/4.0.47/ix_values.yaml index 17b73a9102..b87536c9ba 100644 --- a/stable/prometheus/4.0.46/ix_values.yaml +++ b/stable/prometheus/4.0.47/ix_values.yaml @@ -12,7 +12,7 @@ thanosImage: alertmanagerImage: repository: tccr.io/truecharts/alertmanager - tag: v0.24.0@sha256:df1a9431003ec363ec83abd752da5d95ea7f01d103a1174253e8814b75e6eb5d + tag: v0.24.0@sha256:921ffe0a667d339152a8373f2a373f1fa6a463d2643003809b120a0bbf94e685 global: labels: {} diff --git a/stable/prometheus/4.0.46/questions.yaml b/stable/prometheus/4.0.47/questions.yaml similarity index 100% rename from stable/prometheus/4.0.46/questions.yaml rename to stable/prometheus/4.0.47/questions.yaml diff --git a/stable/prometheus/4.0.46/templates/_helpers.tpl b/stable/prometheus/4.0.47/templates/_helpers.tpl similarity index 100% rename from stable/prometheus/4.0.46/templates/_helpers.tpl rename to stable/prometheus/4.0.47/templates/_helpers.tpl diff --git a/stable/prometheus/4.0.46/templates/alertmanager/_alertmanager.tpl b/stable/prometheus/4.0.47/templates/alertmanager/_alertmanager.tpl similarity index 100% rename from stable/prometheus/4.0.46/templates/alertmanager/_alertmanager.tpl rename to stable/prometheus/4.0.47/templates/alertmanager/_alertmanager.tpl diff --git a/stable/prometheus/4.0.46/templates/alertmanager/secrets.yaml b/stable/prometheus/4.0.47/templates/alertmanager/secrets.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/alertmanager/secrets.yaml rename to stable/prometheus/4.0.47/templates/alertmanager/secrets.yaml diff --git a/stable/prometheus/4.0.46/templates/alertmanager/serviceaccount.yaml b/stable/prometheus/4.0.47/templates/alertmanager/serviceaccount.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/alertmanager/serviceaccount.yaml rename to stable/prometheus/4.0.47/templates/alertmanager/serviceaccount.yaml diff --git a/stable/prometheus/4.0.46/templates/alertmanager/servicemonitor.yaml b/stable/prometheus/4.0.47/templates/alertmanager/servicemonitor.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/alertmanager/servicemonitor.yaml rename to stable/prometheus/4.0.47/templates/alertmanager/servicemonitor.yaml diff --git a/stable/prometheus/4.0.46/templates/common.yaml b/stable/prometheus/4.0.47/templates/common.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/common.yaml rename to stable/prometheus/4.0.47/templates/common.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/core-dns/service.yaml b/stable/prometheus/4.0.47/templates/exporters/core-dns/service.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/core-dns/service.yaml rename to stable/prometheus/4.0.47/templates/exporters/core-dns/service.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/core-dns/servicemonitor.yaml b/stable/prometheus/4.0.47/templates/exporters/core-dns/servicemonitor.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/core-dns/servicemonitor.yaml rename to stable/prometheus/4.0.47/templates/exporters/core-dns/servicemonitor.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/kube-apiserver/servicemonitor.yaml b/stable/prometheus/4.0.47/templates/exporters/kube-apiserver/servicemonitor.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/kube-apiserver/servicemonitor.yaml rename to stable/prometheus/4.0.47/templates/exporters/kube-apiserver/servicemonitor.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/kube-controller-manager/endpoints.yaml b/stable/prometheus/4.0.47/templates/exporters/kube-controller-manager/endpoints.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/kube-controller-manager/endpoints.yaml rename to stable/prometheus/4.0.47/templates/exporters/kube-controller-manager/endpoints.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/kube-controller-manager/service.yaml b/stable/prometheus/4.0.47/templates/exporters/kube-controller-manager/service.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/kube-controller-manager/service.yaml rename to stable/prometheus/4.0.47/templates/exporters/kube-controller-manager/service.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/kube-controller-manager/servicemonitor.yaml b/stable/prometheus/4.0.47/templates/exporters/kube-controller-manager/servicemonitor.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/kube-controller-manager/servicemonitor.yaml rename to stable/prometheus/4.0.47/templates/exporters/kube-controller-manager/servicemonitor.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/kube-scheduler/endpoints.yaml b/stable/prometheus/4.0.47/templates/exporters/kube-scheduler/endpoints.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/kube-scheduler/endpoints.yaml rename to stable/prometheus/4.0.47/templates/exporters/kube-scheduler/endpoints.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/kube-scheduler/service.yaml b/stable/prometheus/4.0.47/templates/exporters/kube-scheduler/service.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/kube-scheduler/service.yaml rename to stable/prometheus/4.0.47/templates/exporters/kube-scheduler/service.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/kube-scheduler/servicemonitor.yaml b/stable/prometheus/4.0.47/templates/exporters/kube-scheduler/servicemonitor.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/kube-scheduler/servicemonitor.yaml rename to stable/prometheus/4.0.47/templates/exporters/kube-scheduler/servicemonitor.yaml diff --git a/stable/prometheus/4.0.46/templates/exporters/kubelet/servicemonitor.yaml b/stable/prometheus/4.0.47/templates/exporters/kubelet/servicemonitor.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/exporters/kubelet/servicemonitor.yaml rename to stable/prometheus/4.0.47/templates/exporters/kubelet/servicemonitor.yaml diff --git a/stable/prometheus/4.0.46/templates/operator/_args.tpl b/stable/prometheus/4.0.47/templates/operator/_args.tpl similarity index 100% rename from stable/prometheus/4.0.46/templates/operator/_args.tpl rename to stable/prometheus/4.0.47/templates/operator/_args.tpl diff --git a/stable/prometheus/4.0.46/templates/operator/configmap.yaml b/stable/prometheus/4.0.47/templates/operator/configmap.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/operator/configmap.yaml rename to stable/prometheus/4.0.47/templates/operator/configmap.yaml diff --git a/stable/prometheus/4.0.46/templates/operator/servicemonitor.yaml b/stable/prometheus/4.0.47/templates/operator/servicemonitor.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/operator/servicemonitor.yaml rename to stable/prometheus/4.0.47/templates/operator/servicemonitor.yaml diff --git a/stable/prometheus/4.0.46/templates/prometheus/_additionalPrometheusRules.tpl b/stable/prometheus/4.0.47/templates/prometheus/_additionalPrometheusRules.tpl similarity index 100% rename from stable/prometheus/4.0.46/templates/prometheus/_additionalPrometheusRules.tpl rename to stable/prometheus/4.0.47/templates/prometheus/_additionalPrometheusRules.tpl diff --git a/stable/prometheus/4.0.46/templates/prometheus/_additionalScrapeJobs.tpl b/stable/prometheus/4.0.47/templates/prometheus/_additionalScrapeJobs.tpl similarity index 100% rename from stable/prometheus/4.0.46/templates/prometheus/_additionalScrapeJobs.tpl rename to stable/prometheus/4.0.47/templates/prometheus/_additionalScrapeJobs.tpl diff --git a/stable/prometheus/4.0.46/templates/prometheus/_prometheus.tpl b/stable/prometheus/4.0.47/templates/prometheus/_prometheus.tpl similarity index 100% rename from stable/prometheus/4.0.46/templates/prometheus/_prometheus.tpl rename to stable/prometheus/4.0.47/templates/prometheus/_prometheus.tpl diff --git a/stable/prometheus/4.0.46/templates/prometheus/_servicemonitor.tpl b/stable/prometheus/4.0.47/templates/prometheus/_servicemonitor.tpl similarity index 100% rename from stable/prometheus/4.0.46/templates/prometheus/_servicemonitor.tpl rename to stable/prometheus/4.0.47/templates/prometheus/_servicemonitor.tpl diff --git a/stable/prometheus/4.0.46/templates/prometheus/clusterrole.yaml b/stable/prometheus/4.0.47/templates/prometheus/clusterrole.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/prometheus/clusterrole.yaml rename to stable/prometheus/4.0.47/templates/prometheus/clusterrole.yaml diff --git a/stable/prometheus/4.0.46/templates/prometheus/clusterrolebinding.yaml b/stable/prometheus/4.0.47/templates/prometheus/clusterrolebinding.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/prometheus/clusterrolebinding.yaml rename to stable/prometheus/4.0.47/templates/prometheus/clusterrolebinding.yaml diff --git a/stable/prometheus/4.0.46/templates/prometheus/serviceaccount.yaml b/stable/prometheus/4.0.47/templates/prometheus/serviceaccount.yaml similarity index 100% rename from stable/prometheus/4.0.46/templates/prometheus/serviceaccount.yaml rename to stable/prometheus/4.0.47/templates/prometheus/serviceaccount.yaml diff --git a/stable/prometheus/4.0.47/values.yaml b/stable/prometheus/4.0.47/values.yaml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/stable/rsshub/3.0.49/CHANGELOG.md b/stable/rsshub/3.0.50/CHANGELOG.md similarity index 89% rename from stable/rsshub/3.0.49/CHANGELOG.md rename to stable/rsshub/3.0.50/CHANGELOG.md index 5df4bfe0e4..e8faf07216 100644 --- a/stable/rsshub/3.0.49/CHANGELOG.md +++ b/stable/rsshub/3.0.50/CHANGELOG.md @@ -2,6 +2,15 @@ +## [rsshub-3.0.50](https://github.com/truecharts/apps/compare/rsshub-3.0.49...rsshub-3.0.50) (2022-07-25) + +### Chore + +- update docker general non-major ([#3290](https://github.com/truecharts/apps/issues/3290)) + + + + ## [rsshub-3.0.49](https://github.com/truecharts/apps/compare/rsshub-3.0.48...rsshub-3.0.49) (2022-07-23) ### Chore @@ -88,12 +97,3 @@ ### Chore -- update docker general non-major ([#3192](https://github.com/truecharts/apps/issues/3192)) - - - -## [rsshub-3.0.40](https://github.com/truecharts/apps/compare/rsshub-3.0.39...rsshub-3.0.40) (2022-07-15) - -### Chore - -- update docker general non-major ([#3184](https://github.com/truecharts/apps/issues/3184)) diff --git a/stable/rsshub/3.0.49/Chart.lock b/stable/rsshub/3.0.50/Chart.lock similarity index 85% rename from stable/rsshub/3.0.49/Chart.lock rename to stable/rsshub/3.0.50/Chart.lock index 1350e2cc65..33c584a8ce 100644 --- a/stable/rsshub/3.0.49/Chart.lock +++ b/stable/rsshub/3.0.50/Chart.lock @@ -6,4 +6,4 @@ dependencies: repository: https://charts.truecharts.org version: 3.0.44 digest: sha256:eff70e6e5258b0d836dba40f04507095c4f06f6d474ec9d0092e5f7b6efa2817 -generated: "2022-07-24T09:32:36.266890224Z" +generated: "2022-07-25T14:44:57.421290085Z" diff --git a/stable/rsshub/3.0.49/Chart.yaml b/stable/rsshub/3.0.50/Chart.yaml similarity index 98% rename from stable/rsshub/3.0.49/Chart.yaml rename to stable/rsshub/3.0.50/Chart.yaml index 55da624b33..782656930f 100644 --- a/stable/rsshub/3.0.49/Chart.yaml +++ b/stable/rsshub/3.0.50/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v2 kubeVersion: ">=1.16.0-0" name: rsshub -version: 3.0.49 +version: 3.0.50 appVersion: "latest" description: RSSHub can generate RSS feeds from pretty much everything type: application diff --git a/stable/rsshub/3.0.49/README.md b/stable/rsshub/3.0.50/README.md similarity index 98% rename from stable/rsshub/3.0.49/README.md rename to stable/rsshub/3.0.50/README.md index d94de1f182..513fb049c7 100644 --- a/stable/rsshub/3.0.49/README.md +++ b/stable/rsshub/3.0.50/README.md @@ -1,6 +1,6 @@ # rsshub -![Version: 3.0.49](https://img.shields.io/badge/Version-3.0.49-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square) +![Version: 3.0.50](https://img.shields.io/badge/Version-3.0.50-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square) RSSHub can generate RSS feeds from pretty much everything diff --git a/stable/rsshub/3.0.49/app-readme.md b/stable/rsshub/3.0.50/app-readme.md similarity index 100% rename from stable/rsshub/3.0.49/app-readme.md rename to stable/rsshub/3.0.50/app-readme.md diff --git a/stable/rsshub/3.0.50/charts/common-10.4.7.tgz b/stable/rsshub/3.0.50/charts/common-10.4.7.tgz new file mode 100644 index 0000000000000000000000000000000000000000..5f8cfb60610d5ab519d212cb663ceca7e96b52c4 GIT binary patch literal 47356 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 AG5`Po literal 0 HcmV?d00001 diff --git a/stable/rsshub/3.0.50/charts/redis-3.0.44.tgz b/stable/rsshub/3.0.50/charts/redis-3.0.44.tgz new file mode 100644 index 0000000000000000000000000000000000000000..ff4664e0cddbf042a2b3c7c1530aef2445c81be3 GIT binary patch literal 56305 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 -### [sickchill-3.0.13](https://github.com/truecharts/apps/compare/sickchill-3.0.12...sickchill-3.0.13) (2022-07-12) - -#### Chore - -* update helm general non-major helm releases ([#3147](https://github.com/truecharts/apps/issues/3147)) diff --git a/stable/sickchill/3.0.25/Chart.lock b/stable/sickchill/3.0.25/Chart.lock new file mode 100644 index 0000000000..103a30ca2b --- /dev/null +++ b/stable/sickchill/3.0.25/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.7 +digest: sha256:52c80f5a7e7acaf8436d216c2e4688aea2f5dfabc4381c10f52bf39683a9cd1f +generated: "2022-07-25T14:45:00.334803763Z" diff --git a/stable/sickchill/3.0.24/Chart.yaml b/stable/sickchill/3.0.25/Chart.yaml similarity index 97% rename from stable/sickchill/3.0.24/Chart.yaml rename to stable/sickchill/3.0.25/Chart.yaml index cc2fa6bf45..d87c70b7bd 100644 --- a/stable/sickchill/3.0.24/Chart.yaml +++ b/stable/sickchill/3.0.25/Chart.yaml @@ -22,7 +22,7 @@ sources: - https://github.com/linuxserver/docker-sickchill - https://github.com/SickChill/SickChill type: application -version: 3.0.24 +version: 3.0.25 annotations: truecharts.org/catagories: | - media diff --git a/stable/sickchill/3.0.24/README.md b/stable/sickchill/3.0.25/README.md similarity index 98% rename from stable/sickchill/3.0.24/README.md rename to stable/sickchill/3.0.25/README.md index 1416c6edcd..ed25c92c10 100644 --- a/stable/sickchill/3.0.24/README.md +++ b/stable/sickchill/3.0.25/README.md @@ -1,6 +1,6 @@ # sickchill -![Version: 3.0.24](https://img.shields.io/badge/Version-3.0.24-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2022.7.20](https://img.shields.io/badge/AppVersion-2022.7.20-informational?style=flat-square) +![Version: 3.0.25](https://img.shields.io/badge/Version-3.0.25-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2022.7.20](https://img.shields.io/badge/AppVersion-2022.7.20-informational?style=flat-square) An Automatic Video Library Manager for TV Shows diff --git a/stable/sickchill/3.0.24/app-readme.md b/stable/sickchill/3.0.25/app-readme.md similarity index 100% rename from stable/sickchill/3.0.24/app-readme.md rename to stable/sickchill/3.0.25/app-readme.md diff --git a/stable/sickchill/3.0.25/charts/common-10.4.7.tgz b/stable/sickchill/3.0.25/charts/common-10.4.7.tgz new file mode 100644 index 0000000000000000000000000000000000000000..5f8cfb60610d5ab519d212cb663ceca7e96b52c4 GIT binary patch literal 47356 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 AG5`Po literal 0 HcmV?d00001 diff --git a/stable/sickchill/3.0.24/ix_values.yaml b/stable/sickchill/3.0.25/ix_values.yaml similarity index 81% rename from stable/sickchill/3.0.24/ix_values.yaml rename to stable/sickchill/3.0.25/ix_values.yaml index 534a4af04f..41d41e920e 100644 --- a/stable/sickchill/3.0.24/ix_values.yaml +++ b/stable/sickchill/3.0.25/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/sickchill pullPolicy: IfNotPresent - tag: 2022.7.20@sha256:92b0bb1e375a0fed491b5e52f97514f630599657ae8ec4743941c81099d463e0 + tag: 2022.7.20@sha256:17061bfc20896004bad43acddfbe30d2ebd8bdb2d7a069733e01daf3530ffbe9 securityContext: readOnlyRootFilesystem: false diff --git a/stable/sickchill/3.0.24/questions.yaml b/stable/sickchill/3.0.25/questions.yaml similarity index 100% rename from stable/sickchill/3.0.24/questions.yaml rename to stable/sickchill/3.0.25/questions.yaml diff --git a/stable/sickchill/3.0.24/templates/common.yaml b/stable/sickchill/3.0.25/templates/common.yaml similarity index 100% rename from stable/sickchill/3.0.24/templates/common.yaml rename to stable/sickchill/3.0.25/templates/common.yaml diff --git a/stable/sickchill/3.0.25/values.yaml b/stable/sickchill/3.0.25/values.yaml new file mode 100644 index 0000000000..e69de29bb2