From 5fa965082f5ac115cfd0bb4462f2f457bf460dd2 Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Fri, 19 Aug 2022 06:03:51 +0000 Subject: [PATCH] Commit new Chart releases for TrueCharts Signed-off-by: TrueCharts-Bot --- .../{1.0.10 => 1.0.11}/CHANGELOG.md | 18 +- .../clickhouse/{1.0.10 => 1.0.11}/Chart.lock | 2 +- .../clickhouse/{1.0.10 => 1.0.11}/Chart.yaml | 4 +- .../clickhouse/{1.0.10 => 1.0.11}/README.md | 2 +- .../{1.0.10 => 1.0.11}/app-readme.md | 0 .../charts/common-10.4.13.tgz | Bin .../{1.0.10 => 1.0.11}/ix_values.yaml | 2 +- .../{1.0.10 => 1.0.11}/questions.yaml | 0 .../{1.0.10 => 1.0.11}/templates/common.yaml | 0 .../clickhouse/{1.0.10 => 1.0.11}/values.yaml | 0 .../{1.0.29 => 1.0.30}/CHANGELOG.md | 18 +- .../{1.0.29 => 1.0.30}/Chart.lock | 2 +- .../{1.0.29 => 1.0.30}/Chart.yaml | 4 +- .../adguard-home/{1.0.29 => 1.0.30}/README.md | 2 +- .../{1.0.29 => 1.0.30}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../{1.0.29 => 1.0.30}/ix_values.yaml | 2 +- .../{1.0.29 => 1.0.30}/questions.yaml | 0 .../{1.0.29 => 1.0.30}/templates/common.yaml | 0 .../{1.0.29 => 1.0.30}/values.yaml | 0 .../{0.0.18 => 0.0.19}/CHANGELOG.md | 9 + .../0.0.19}/Chart.lock | 2 +- .../{0.0.18 => 0.0.19}/Chart.yaml | 2 +- .../{0.0.18 => 0.0.19}/README.md | 2 +- .../{0.0.18 => 0.0.19}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../{0.0.18 => 0.0.19}/ix_values.yaml | 2 +- .../{0.0.18 => 0.0.19}/questions.yaml | 0 .../{0.0.18 => 0.0.19}/templates/common.yaml | 0 .../{0.0.18 => 0.0.19}/values.yaml | 0 .../appsmith/{2.0.38 => 2.0.39}/CHANGELOG.md | 18 +- .../appsmith/2.0.39}/Chart.lock | 2 +- .../appsmith/{2.0.38 => 2.0.39}/Chart.yaml | 4 +- .../appsmith/{2.0.38 => 2.0.39}/README.md | 2 +- .../appsmith/{2.0.38 => 2.0.39}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../charts/redis-3.0.54.tgz | Bin .../{2.0.38 => 2.0.39}/ix_values.yaml | 2 +- .../{2.0.38 => 2.0.39}/questions.yaml | 0 .../{2.0.38 => 2.0.39}/templates/common.yaml | 0 .../appsmith/{2.0.38 => 2.0.39}/values.yaml | 0 .../cryptpad/{0.0.24 => 0.0.25}/CHANGELOG.md | 18 +- .../0.0.18 => cryptpad/0.0.25}/Chart.lock | 2 +- .../cryptpad/{0.0.24 => 0.0.25}/Chart.yaml | 2 +- .../cryptpad/{0.0.24 => 0.0.25}/README.md | 2 +- .../cryptpad/{0.0.24 => 0.0.25}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../{0.0.24 => 0.0.25}/ix_values.yaml | 2 +- .../{0.0.24 => 0.0.25}/questions.yaml | 0 .../{0.0.24 => 0.0.25}/templates/common.yaml | 0 .../cryptpad/{0.0.24 => 0.0.25}/values.yaml | 0 .../gokapi/{0.0.21 => 0.0.22}/CHANGELOG.md | 18 +- .../0.0.24 => gokapi/0.0.22}/Chart.lock | 2 +- .../gokapi/{0.0.21 => 0.0.22}/Chart.yaml | 4 +- incubator/gokapi/{0.0.21 => 0.0.22}/README.md | 2 +- .../gokapi/{0.0.21 => 0.0.22}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../gokapi/{0.0.21 => 0.0.22}/ix_values.yaml | 2 +- .../gokapi/{0.0.21 => 0.0.22}/questions.yaml | 0 .../{0.0.21 => 0.0.22}/templates/common.yaml | 0 .../gokapi/{0.0.21 => 0.0.22}/values.yaml | 0 .../{0.0.19 => 0.0.20}/CHANGELOG.md | 18 +- .../openproject/{0.0.19 => 0.0.20}/Chart.lock | 2 +- .../openproject/{0.0.19 => 0.0.20}/Chart.yaml | 2 +- .../openproject/{0.0.19 => 0.0.20}/README.md | 2 +- .../{0.0.19 => 0.0.20}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../charts/postgresql-8.0.56.tgz | Bin .../{0.0.19 => 0.0.20}/ix_values.yaml | 2 +- .../{0.0.19 => 0.0.20}/questions.yaml | 0 .../{0.0.19 => 0.0.20}/templates/_secrets.tpl | 0 .../{0.0.19 => 0.0.20}/templates/common.yaml | 0 .../{0.0.19 => 0.0.20}/values.yaml | 0 incubator/rimgo/0.0.27/Chart.lock | 6 - .../rimgo/{0.0.27 => 0.0.28}/CHANGELOG.md | 18 +- .../0.0.16 => rimgo/0.0.28}/Chart.lock | 2 +- incubator/rimgo/{0.0.27 => 0.0.28}/Chart.yaml | 2 +- incubator/rimgo/{0.0.27 => 0.0.28}/README.md | 2 +- .../rimgo/{0.0.27 => 0.0.28}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../rimgo/{0.0.27 => 0.0.28}/ix_values.yaml | 2 +- .../rimgo/{0.0.27 => 0.0.28}/questions.yaml | 0 .../{0.0.27 => 0.0.28}/templates/common.yaml | 0 .../rimgo/{0.0.27 => 0.0.28}/values.yaml | 0 incubator/tachidesk-docker/0.0.17/Chart.lock | 6 - .../{0.0.17 => 0.0.18}/CHANGELOG.md | 18 +- incubator/tachidesk-docker/0.0.18/Chart.lock | 6 + .../{0.0.17 => 0.0.18}/Chart.yaml | 2 +- .../{0.0.17 => 0.0.18}/README.md | 2 +- .../{0.0.17 => 0.0.18}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../{0.0.17 => 0.0.18}/ix_values.yaml | 2 +- .../{0.0.17 => 0.0.18}/questions.yaml | 0 .../{0.0.17 => 0.0.18}/templates/common.yaml | 0 .../{0.0.17 => 0.0.18}/values.yaml | 0 .../{0.0.16 => 0.0.17}/CHANGELOG.md | 18 +- incubator/vaulthunters/0.0.17/Chart.lock | 6 + .../{0.0.16 => 0.0.17}/Chart.yaml | 2 +- .../vaulthunters/{0.0.16 => 0.0.17}/README.md | 2 +- .../{0.0.16 => 0.0.17}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../{0.0.16 => 0.0.17}/ix_values.yaml | 2 +- .../{0.0.16 => 0.0.17}/questions.yaml | 0 .../{0.0.16 => 0.0.17}/templates/common.yaml | 0 .../{0.0.16 => 0.0.17}/values.yaml | 0 incubator/vertex/0.0.24/Chart.lock | 6 - .../vertex/{0.0.24 => 0.0.25}/CHANGELOG.md | 18 +- incubator/vertex/0.0.25/Chart.lock | 6 + .../vertex/{0.0.24 => 0.0.25}/Chart.yaml | 2 +- incubator/vertex/{0.0.24 => 0.0.25}/README.md | 2 +- .../vertex/{0.0.24 => 0.0.25}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../vertex/{0.0.24 => 0.0.25}/ix_values.yaml | 2 +- .../vertex/{0.0.24 => 0.0.25}/questions.yaml | 0 .../{0.0.24 => 0.0.25}/templates/common.yaml | 0 .../vertex/{0.0.24 => 0.0.25}/values.yaml | 0 incubator/virt-manager/0.0.27/Chart.lock | 6 - .../{0.0.27 => 0.0.28}/CHANGELOG.md | 18 +- incubator/virt-manager/0.0.28/Chart.lock | 6 + .../{0.0.27 => 0.0.28}/Chart.yaml | 2 +- .../virt-manager/{0.0.27 => 0.0.28}/README.md | 2 +- .../{0.0.27 => 0.0.28}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../{0.0.27 => 0.0.28}/ix_values.yaml | 2 +- .../{0.0.27 => 0.0.28}/questions.yaml | 0 .../{0.0.27 => 0.0.28}/templates/common.yaml | 0 .../{0.0.27 => 0.0.28}/values.yaml | 0 .../{5.1.37 => 5.1.38}/CHANGELOG.md | 18 +- .../custom-app/{5.1.37 => 5.1.38}/Chart.lock | 2 +- .../custom-app/{5.1.37 => 5.1.38}/Chart.yaml | 4 +- .../custom-app/{5.1.37 => 5.1.38}/README.md | 2 +- .../{5.1.37 => 5.1.38}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../{5.1.37 => 5.1.38}/ci/test-values.yaml | 2 +- .../{5.1.37 => 5.1.38}/ix_values.yaml | 2 +- .../{5.1.37 => 5.1.38}/questions.yaml | 0 .../{5.1.37 => 5.1.38}/templates/common.yaml | 0 .../custom-app/{5.1.37 => 5.1.38}/values.yaml | 0 .../{2.0.31 => 2.0.32}/CHANGELOG.md | 18 +- stable/docker-compose/2.0.32/Chart.lock | 6 + .../{2.0.31 => 2.0.32}/Chart.yaml | 2 +- .../{2.0.31 => 2.0.32}/README.md | 2 +- .../{2.0.31 => 2.0.32}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../{2.0.31 => 2.0.32}/ix_values.yaml | 2 +- .../{2.0.31 => 2.0.32}/questions.yaml | 0 .../{2.0.31 => 2.0.32}/templates/common.yaml | 0 .../{2.0.31 => 2.0.32}/values.yaml | 0 stable/drawio/2.0.35/Chart.lock | 6 - stable/drawio/{2.0.35 => 2.0.36}/CHANGELOG.md | 18 +- stable/drawio/2.0.36/Chart.lock | 6 + stable/drawio/{2.0.35 => 2.0.36}/Chart.yaml | 4 +- stable/drawio/{2.0.35 => 2.0.36}/README.md | 2 +- .../drawio/{2.0.35 => 2.0.36}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../drawio/{2.0.35 => 2.0.36}/ix_values.yaml | 2 +- .../drawio/{2.0.35 => 2.0.36}/questions.yaml | 0 .../{2.0.35 => 2.0.36}/templates/common.yaml | 0 stable/drawio/{2.0.35 => 2.0.36}/values.yaml | 0 stable/filezilla/4.0.29/Chart.lock | 6 - .../filezilla/{4.0.29 => 4.0.30}/CHANGELOG.md | 18 +- stable/filezilla/4.0.30/Chart.lock | 6 + .../filezilla/{4.0.29 => 4.0.30}/Chart.yaml | 2 +- stable/filezilla/{4.0.29 => 4.0.30}/README.md | 2 +- .../{4.0.29 => 4.0.30}/app-readme.md | 0 .../charts/common-10.4.12.tgz | Bin .../{4.0.29 => 4.0.30}/ix_values.yaml | 2 +- .../{4.0.29 => 4.0.30}/questions.yaml | 0 .../{4.0.29 => 4.0.30}/templates/common.yaml | 0 .../filezilla/{4.0.29 => 4.0.30}/values.yaml | 0 stable/grocy/11.0.35/CHANGELOG.md | 99 + stable/grocy/11.0.35/Chart.lock | 6 + stable/grocy/11.0.35/Chart.yaml | 28 + stable/grocy/11.0.35/README.md | 108 + stable/grocy/11.0.35/app-readme.md | 8 + .../11.0.35}/charts/common-10.4.12.tgz | Bin stable/grocy/11.0.35/ix_values.yaml | 27 + stable/grocy/11.0.35/questions.yaml | 2426 ++++++++++++++++ .../11.0.35}/templates/common.yaml | 0 .../8.0.27 => grocy/11.0.35}/values.yaml | 0 stable/home-assistant/15.0.42/CHANGELOG.md | 99 + stable/home-assistant/15.0.42/Chart.lock | 9 + stable/home-assistant/15.0.42/Chart.yaml | 35 + stable/home-assistant/15.0.42/README.md | 110 + stable/home-assistant/15.0.42/app-readme.md | 8 + .../15.0.42}/charts/common-10.4.12.tgz | Bin .../15.0.42}/charts/postgresql-8.0.56.tgz | Bin stable/home-assistant/15.0.42/ix_values.yaml | 160 ++ stable/home-assistant/15.0.42/questions.yaml | 2426 ++++++++++++++++ .../15.0.42/templates/common.yaml | 5 + .../15.0.42}/values.yaml | 0 stable/jackett/11.0.61/CHANGELOG.md | 99 + stable/jackett/11.0.61/Chart.lock | 6 + stable/jackett/11.0.61/Chart.yaml | 31 + stable/jackett/11.0.61/README.md | 108 + stable/jackett/11.0.61/app-readme.md | 8 + .../11.0.61}/charts/common-10.4.12.tgz | Bin stable/jackett/11.0.61/ix_values.yaml | 33 + stable/jackett/11.0.61/questions.yaml | 2426 ++++++++++++++++ .../11.0.61}/templates/common.yaml | 0 .../6.0.31 => jackett/11.0.61}/values.yaml | 0 stable/jdownloader2/8.0.27/Chart.lock | 6 - .../{8.0.27 => 8.0.28}/CHANGELOG.md | 18 +- .../2.0.31 => jdownloader2/8.0.28}/Chart.lock | 2 +- .../{8.0.27 => 8.0.28}/Chart.yaml | 4 +- .../jdownloader2/{8.0.27 => 8.0.28}/README.md | 2 +- .../{8.0.27 => 8.0.28}/app-readme.md | 0 .../8.0.28}/charts/common-10.4.12.tgz | Bin .../{8.0.27 => 8.0.28}/ix_values.yaml | 2 +- .../{8.0.27 => 8.0.28}/questions.yaml | 0 .../8.0.28}/templates/common.yaml | 0 .../8.0.28}/values.yaml | 0 stable/kavita/2.0.27/Chart.lock | 6 - stable/kavita/{2.0.27 => 2.0.28}/CHANGELOG.md | 18 +- stable/kavita/2.0.28/Chart.lock | 6 + stable/kavita/{2.0.27 => 2.0.28}/Chart.yaml | 4 +- stable/kavita/{2.0.27 => 2.0.28}/README.md | 2 +- .../kavita/{2.0.27 => 2.0.28}/app-readme.md | 0 .../2.0.28}/charts/common-10.4.12.tgz | Bin .../kavita/{2.0.27 => 2.0.28}/ix_values.yaml | 2 +- .../kavita/{2.0.27 => 2.0.28}/questions.yaml | 0 .../2.0.28}/templates/common.yaml | 0 .../1.0.25 => kavita/2.0.28}/values.yaml | 0 stable/komga/6.0.31/Chart.lock | 6 - stable/komga/{6.0.31 => 6.0.32}/CHANGELOG.md | 18 +- stable/komga/6.0.32/Chart.lock | 6 + stable/komga/{6.0.31 => 6.0.32}/Chart.yaml | 4 +- stable/komga/{6.0.31 => 6.0.32}/README.md | 2 +- stable/komga/{6.0.31 => 6.0.32}/app-readme.md | 0 .../6.0.32}/charts/common-10.4.12.tgz | Bin .../komga/{6.0.31 => 6.0.32}/ix_values.yaml | 2 +- .../komga/{6.0.31 => 6.0.32}/questions.yaml | 0 .../6.0.32}/templates/common.yaml | 0 .../4.0.62 => komga/6.0.32}/values.yaml | 0 stable/omada-controller/6.0.49/Chart.lock | 6 - .../{6.0.49 => 6.0.50}/CHANGELOG.md | 18 +- stable/omada-controller/6.0.50/Chart.lock | 6 + .../{6.0.49 => 6.0.50}/Chart.yaml | 2 +- .../{6.0.49 => 6.0.50}/README.md | 2 +- .../{6.0.49 => 6.0.50}/app-readme.md | 0 .../6.0.50}/charts/common-10.4.12.tgz | Bin .../{6.0.49 => 6.0.50}/ix_values.yaml | 2 +- .../{6.0.49 => 6.0.50}/questions.yaml | 0 .../6.0.50}/templates/common.yaml | 0 .../6.0.50}/values.yaml | 0 stable/openspeedtest/1.0.25/Chart.lock | 6 - .../{1.0.25 => 1.0.26}/CHANGELOG.md | 18 +- stable/openspeedtest/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.12.tgz | Bin .../{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/plex/10.1.1/CHANGELOG.md | 99 + stable/plex/10.1.1/Chart.lock | 6 + stable/plex/10.1.1/Chart.yaml | 29 + stable/plex/10.1.1/README.md | 108 + stable/plex/10.1.1/app-readme.md | 8 + .../10.1.1}/charts/common-10.4.12.tgz | Bin stable/plex/10.1.1/ix_values.yaml | 34 + stable/plex/10.1.1/questions.yaml | 2468 +++++++++++++++++ stable/plex/10.1.1/templates/common.yaml | 1 + .../{wekan/4.0.35 => plex/10.1.1}/values.yaml | 0 .../{4.0.62 => 4.0.63}/CHANGELOG.md | 18 +- .../prometheus/{4.0.62 => 4.0.63}/Chart.lock | 2 +- .../prometheus/{4.0.62 => 4.0.63}/Chart.yaml | 2 +- .../prometheus/{4.0.62 => 4.0.63}/README.md | 2 +- .../{4.0.62 => 4.0.63}/app-readme.md | 0 .../4.0.63/charts/common-10.4.12.tgz | Bin 0 -> 47336 bytes .../charts/kube-state-metrics-3.1.6.tgz | Bin .../charts/node-exporter-3.0.8.tgz | Bin .../crds/crd-alertmanager-config.yaml | 0 .../crds/crd-alertmanager.yaml | 0 .../crds/crd-podmonitor.yaml | 0 .../{4.0.62 => 4.0.63}/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.62 => 4.0.63}/ix_values.yaml | 4 +- .../{4.0.62 => 4.0.63}/questions.yaml | 0 .../{4.0.62 => 4.0.63}/templates/_helpers.tpl | 0 .../templates/alertmanager/_alertmanager.tpl | 0 .../templates/alertmanager/secrets.yaml | 0 .../alertmanager/serviceaccount.yaml | 0 .../alertmanager/servicemonitor.yaml | 0 .../{4.0.62 => 4.0.63}/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.63/values.yaml | 0 stable/rsshub/{3.0.66 => 3.0.67}/CHANGELOG.md | 18 +- .../rsshub/3.0.67}/Chart.lock | 2 +- stable/rsshub/{3.0.66 => 3.0.67}/Chart.yaml | 2 +- stable/rsshub/{3.0.66 => 3.0.67}/README.md | 2 +- .../rsshub/{3.0.66 => 3.0.67}/app-readme.md | 0 .../rsshub/3.0.67/charts/common-10.4.12.tgz | Bin 0 -> 47336 bytes .../charts/redis-3.0.54.tgz | Bin .../rsshub/{3.0.66 => 3.0.67}/ix_values.yaml | 2 +- .../rsshub/{3.0.66 => 3.0.67}/questions.yaml | 0 stable/rsshub/3.0.67/templates/common.yaml | 1 + stable/rsshub/3.0.67/values.yaml | 0 stable/sabnzbd/11.0.29/CHANGELOG.md | 99 + stable/sabnzbd/11.0.29/Chart.lock | 6 + stable/sabnzbd/11.0.29/Chart.yaml | 29 + stable/sabnzbd/11.0.29/README.md | 108 + stable/sabnzbd/11.0.29/app-readme.md | 8 + .../sabnzbd/11.0.29/charts/common-10.4.12.tgz | Bin 0 -> 47336 bytes stable/sabnzbd/11.0.29/ix_values.yaml | 22 + stable/sabnzbd/11.0.29/questions.yaml | 2439 ++++++++++++++++ stable/sabnzbd/11.0.29/templates/common.yaml | 1 + stable/sabnzbd/11.0.29/values.yaml | 0 .../vikunja/{3.0.40 => 3.0.41}/CHANGELOG.md | 18 +- stable/vikunja/{3.0.40 => 3.0.41}/Chart.lock | 2 +- stable/vikunja/{3.0.40 => 3.0.41}/Chart.yaml | 4 +- stable/vikunja/{3.0.40 => 3.0.41}/README.md | 2 +- .../vikunja/{3.0.40 => 3.0.41}/app-readme.md | 0 .../vikunja/3.0.41/charts/common-10.4.12.tgz | Bin 0 -> 47336 bytes .../3.0.41/charts/postgresql-8.0.56.tgz | Bin 0 -> 55345 bytes .../charts/redis-3.0.54.tgz | Bin .../vikunja/{3.0.40 => 3.0.41}/ix_values.yaml | 2 +- .../vikunja/{3.0.40 => 3.0.41}/questions.yaml | 0 .../{3.0.40 => 3.0.41}/templates/_secrets.tpl | 0 .../{3.0.40 => 3.0.41}/templates/common.yaml | 0 stable/vikunja/3.0.41/values.yaml | 0 stable/wekan/{4.0.35 => 4.0.36}/CHANGELOG.md | 18 +- stable/wekan/{4.0.35 => 4.0.36}/Chart.lock | 2 +- stable/wekan/{4.0.35 => 4.0.36}/Chart.yaml | 4 +- stable/wekan/{4.0.35 => 4.0.36}/README.md | 2 +- stable/wekan/{4.0.35 => 4.0.36}/app-readme.md | 0 stable/wekan/4.0.36/charts/common-10.4.12.tgz | Bin 0 -> 47336 bytes .../charts/mongodb-1.0.56.tgz | Bin .../wekan/{4.0.35 => 4.0.36}/ix_values.yaml | 2 +- .../wekan/{4.0.35 => 4.0.36}/questions.yaml | 0 stable/wekan/4.0.36/templates/common.yaml | 1 + stable/wekan/4.0.36/values.yaml | 0 356 files changed, 14125 insertions(+), 384 deletions(-) rename dependency/clickhouse/{1.0.10 => 1.0.11}/CHANGELOG.md (91%) rename dependency/clickhouse/{1.0.10 => 1.0.11}/Chart.lock (80%) rename dependency/clickhouse/{1.0.10 => 1.0.11}/Chart.yaml (95%) rename dependency/clickhouse/{1.0.10 => 1.0.11}/README.md (95%) rename dependency/clickhouse/{1.0.10 => 1.0.11}/app-readme.md (100%) rename dependency/clickhouse/{1.0.10 => 1.0.11}/charts/common-10.4.13.tgz (100%) rename dependency/clickhouse/{1.0.10 => 1.0.11}/ix_values.yaml (95%) rename dependency/clickhouse/{1.0.10 => 1.0.11}/questions.yaml (100%) rename dependency/clickhouse/{1.0.10 => 1.0.11}/templates/common.yaml (100%) rename dependency/clickhouse/{1.0.10 => 1.0.11}/values.yaml (100%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/CHANGELOG.md (91%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/Chart.lock (80%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/Chart.yaml (95%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/README.md (94%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/app-readme.md (100%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/charts/common-10.4.12.tgz (100%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/ix_values.yaml (95%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/questions.yaml (100%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/templates/common.yaml (100%) rename incubator/adguard-home/{1.0.29 => 1.0.30}/values.yaml (100%) rename incubator/adguardhome-sync/{0.0.18 => 0.0.19}/CHANGELOG.md (88%) rename incubator/{gokapi/0.0.21 => adguardhome-sync/0.0.19}/Chart.lock (80%) rename incubator/adguardhome-sync/{0.0.18 => 0.0.19}/Chart.yaml (98%) rename incubator/adguardhome-sync/{0.0.18 => 0.0.19}/README.md (98%) rename incubator/adguardhome-sync/{0.0.18 => 0.0.19}/app-readme.md (100%) rename incubator/adguardhome-sync/{0.0.18 => 0.0.19}/charts/common-10.4.12.tgz (100%) rename incubator/adguardhome-sync/{0.0.18 => 0.0.19}/ix_values.yaml (84%) rename incubator/adguardhome-sync/{0.0.18 => 0.0.19}/questions.yaml (100%) rename incubator/adguardhome-sync/{0.0.18 => 0.0.19}/templates/common.yaml (100%) rename incubator/adguardhome-sync/{0.0.18 => 0.0.19}/values.yaml (100%) rename incubator/appsmith/{2.0.38 => 2.0.39}/CHANGELOG.md (91%) rename {stable/rsshub/3.0.66 => incubator/appsmith/2.0.39}/Chart.lock (85%) rename incubator/appsmith/{2.0.38 => 2.0.39}/Chart.yaml (96%) rename incubator/appsmith/{2.0.38 => 2.0.39}/README.md (94%) rename incubator/appsmith/{2.0.38 => 2.0.39}/app-readme.md (100%) rename incubator/appsmith/{2.0.38 => 2.0.39}/charts/common-10.4.12.tgz (100%) rename incubator/appsmith/{2.0.38 => 2.0.39}/charts/redis-3.0.54.tgz (100%) rename incubator/appsmith/{2.0.38 => 2.0.39}/ix_values.yaml (90%) rename incubator/appsmith/{2.0.38 => 2.0.39}/questions.yaml (100%) rename incubator/appsmith/{2.0.38 => 2.0.39}/templates/common.yaml (100%) rename incubator/appsmith/{2.0.38 => 2.0.39}/values.yaml (100%) rename incubator/cryptpad/{0.0.24 => 0.0.25}/CHANGELOG.md (89%) rename incubator/{adguardhome-sync/0.0.18 => cryptpad/0.0.25}/Chart.lock (80%) rename incubator/cryptpad/{0.0.24 => 0.0.25}/Chart.yaml (98%) rename incubator/cryptpad/{0.0.24 => 0.0.25}/README.md (98%) rename incubator/cryptpad/{0.0.24 => 0.0.25}/app-readme.md (100%) rename incubator/cryptpad/{0.0.24 => 0.0.25}/charts/common-10.4.12.tgz (100%) rename incubator/cryptpad/{0.0.24 => 0.0.25}/ix_values.yaml (91%) rename incubator/cryptpad/{0.0.24 => 0.0.25}/questions.yaml (100%) rename incubator/cryptpad/{0.0.24 => 0.0.25}/templates/common.yaml (100%) rename incubator/cryptpad/{0.0.24 => 0.0.25}/values.yaml (100%) rename incubator/gokapi/{0.0.21 => 0.0.22}/CHANGELOG.md (91%) rename incubator/{cryptpad/0.0.24 => gokapi/0.0.22}/Chart.lock (80%) rename incubator/gokapi/{0.0.21 => 0.0.22}/Chart.yaml (95%) rename incubator/gokapi/{0.0.21 => 0.0.22}/README.md (95%) rename incubator/gokapi/{0.0.21 => 0.0.22}/app-readme.md (100%) rename incubator/gokapi/{0.0.21 => 0.0.22}/charts/common-10.4.12.tgz (100%) rename incubator/gokapi/{0.0.21 => 0.0.22}/ix_values.yaml (87%) rename incubator/gokapi/{0.0.21 => 0.0.22}/questions.yaml (100%) rename incubator/gokapi/{0.0.21 => 0.0.22}/templates/common.yaml (100%) rename incubator/gokapi/{0.0.21 => 0.0.22}/values.yaml (100%) rename incubator/openproject/{0.0.19 => 0.0.20}/CHANGELOG.md (92%) rename incubator/openproject/{0.0.19 => 0.0.20}/Chart.lock (85%) rename incubator/openproject/{0.0.19 => 0.0.20}/Chart.yaml (98%) rename incubator/openproject/{0.0.19 => 0.0.20}/README.md (98%) rename incubator/openproject/{0.0.19 => 0.0.20}/app-readme.md (100%) rename incubator/openproject/{0.0.19 => 0.0.20}/charts/common-10.4.12.tgz (100%) rename incubator/openproject/{0.0.19 => 0.0.20}/charts/postgresql-8.0.56.tgz (100%) rename incubator/openproject/{0.0.19 => 0.0.20}/ix_values.yaml (89%) rename incubator/openproject/{0.0.19 => 0.0.20}/questions.yaml (100%) rename incubator/openproject/{0.0.19 => 0.0.20}/templates/_secrets.tpl (100%) rename incubator/openproject/{0.0.19 => 0.0.20}/templates/common.yaml (100%) rename incubator/openproject/{0.0.19 => 0.0.20}/values.yaml (100%) delete mode 100644 incubator/rimgo/0.0.27/Chart.lock rename incubator/rimgo/{0.0.27 => 0.0.28}/CHANGELOG.md (91%) rename incubator/{vaulthunters/0.0.16 => rimgo/0.0.28}/Chart.lock (80%) rename incubator/rimgo/{0.0.27 => 0.0.28}/Chart.yaml (97%) rename incubator/rimgo/{0.0.27 => 0.0.28}/README.md (98%) rename incubator/rimgo/{0.0.27 => 0.0.28}/app-readme.md (100%) rename incubator/rimgo/{0.0.27 => 0.0.28}/charts/common-10.4.12.tgz (100%) rename incubator/rimgo/{0.0.27 => 0.0.28}/ix_values.yaml (84%) rename incubator/rimgo/{0.0.27 => 0.0.28}/questions.yaml (100%) rename incubator/rimgo/{0.0.27 => 0.0.28}/templates/common.yaml (100%) rename incubator/rimgo/{0.0.27 => 0.0.28}/values.yaml (100%) delete mode 100644 incubator/tachidesk-docker/0.0.17/Chart.lock rename incubator/tachidesk-docker/{0.0.17 => 0.0.18}/CHANGELOG.md (90%) create mode 100644 incubator/tachidesk-docker/0.0.18/Chart.lock rename incubator/tachidesk-docker/{0.0.17 => 0.0.18}/Chart.yaml (98%) rename incubator/tachidesk-docker/{0.0.17 => 0.0.18}/README.md (98%) rename incubator/tachidesk-docker/{0.0.17 => 0.0.18}/app-readme.md (100%) rename incubator/tachidesk-docker/{0.0.17 => 0.0.18}/charts/common-10.4.12.tgz (100%) rename incubator/tachidesk-docker/{0.0.17 => 0.0.18}/ix_values.yaml (88%) rename incubator/tachidesk-docker/{0.0.17 => 0.0.18}/questions.yaml (100%) rename incubator/tachidesk-docker/{0.0.17 => 0.0.18}/templates/common.yaml (100%) rename incubator/tachidesk-docker/{0.0.17 => 0.0.18}/values.yaml (100%) rename incubator/vaulthunters/{0.0.16 => 0.0.17}/CHANGELOG.md (91%) create mode 100644 incubator/vaulthunters/0.0.17/Chart.lock rename incubator/vaulthunters/{0.0.16 => 0.0.17}/Chart.yaml (98%) rename incubator/vaulthunters/{0.0.16 => 0.0.17}/README.md (98%) rename incubator/vaulthunters/{0.0.16 => 0.0.17}/app-readme.md (100%) rename incubator/vaulthunters/{0.0.16 => 0.0.17}/charts/common-10.4.12.tgz (100%) rename incubator/vaulthunters/{0.0.16 => 0.0.17}/ix_values.yaml (85%) rename incubator/vaulthunters/{0.0.16 => 0.0.17}/questions.yaml (100%) rename incubator/vaulthunters/{0.0.16 => 0.0.17}/templates/common.yaml (100%) rename incubator/vaulthunters/{0.0.16 => 0.0.17}/values.yaml (100%) delete mode 100644 incubator/vertex/0.0.24/Chart.lock rename incubator/vertex/{0.0.24 => 0.0.25}/CHANGELOG.md (91%) create mode 100644 incubator/vertex/0.0.25/Chart.lock rename incubator/vertex/{0.0.24 => 0.0.25}/Chart.yaml (98%) rename incubator/vertex/{0.0.24 => 0.0.25}/README.md (98%) rename incubator/vertex/{0.0.24 => 0.0.25}/app-readme.md (100%) rename incubator/vertex/{0.0.24 => 0.0.25}/charts/common-10.4.12.tgz (100%) rename incubator/vertex/{0.0.24 => 0.0.25}/ix_values.yaml (83%) rename incubator/vertex/{0.0.24 => 0.0.25}/questions.yaml (100%) rename incubator/vertex/{0.0.24 => 0.0.25}/templates/common.yaml (100%) rename incubator/vertex/{0.0.24 => 0.0.25}/values.yaml (100%) delete mode 100644 incubator/virt-manager/0.0.27/Chart.lock rename incubator/virt-manager/{0.0.27 => 0.0.28}/CHANGELOG.md (91%) create mode 100644 incubator/virt-manager/0.0.28/Chart.lock rename incubator/virt-manager/{0.0.27 => 0.0.28}/Chart.yaml (98%) rename incubator/virt-manager/{0.0.27 => 0.0.28}/README.md (98%) rename incubator/virt-manager/{0.0.27 => 0.0.28}/app-readme.md (100%) rename incubator/virt-manager/{0.0.27 => 0.0.28}/charts/common-10.4.12.tgz (100%) rename incubator/virt-manager/{0.0.27 => 0.0.28}/ix_values.yaml (88%) rename incubator/virt-manager/{0.0.27 => 0.0.28}/questions.yaml (100%) rename incubator/virt-manager/{0.0.27 => 0.0.28}/templates/common.yaml (100%) rename incubator/virt-manager/{0.0.27 => 0.0.28}/values.yaml (100%) rename stable/custom-app/{5.1.37 => 5.1.38}/CHANGELOG.md (92%) rename stable/custom-app/{5.1.37 => 5.1.38}/Chart.lock (80%) rename stable/custom-app/{5.1.37 => 5.1.38}/Chart.yaml (94%) rename stable/custom-app/{5.1.37 => 5.1.38}/README.md (95%) rename stable/custom-app/{5.1.37 => 5.1.38}/app-readme.md (100%) rename stable/custom-app/{5.1.37 => 5.1.38}/charts/common-10.4.12.tgz (100%) rename stable/custom-app/{5.1.37 => 5.1.38}/ci/test-values.yaml (88%) rename stable/custom-app/{5.1.37 => 5.1.38}/ix_values.yaml (52%) rename stable/custom-app/{5.1.37 => 5.1.38}/questions.yaml (100%) rename stable/custom-app/{5.1.37 => 5.1.38}/templates/common.yaml (100%) rename stable/custom-app/{5.1.37 => 5.1.38}/values.yaml (100%) rename stable/docker-compose/{2.0.31 => 2.0.32}/CHANGELOG.md (91%) create mode 100644 stable/docker-compose/2.0.32/Chart.lock rename stable/docker-compose/{2.0.31 => 2.0.32}/Chart.yaml (98%) rename stable/docker-compose/{2.0.31 => 2.0.32}/README.md (98%) rename stable/docker-compose/{2.0.31 => 2.0.32}/app-readme.md (100%) rename stable/docker-compose/{2.0.31 => 2.0.32}/charts/common-10.4.12.tgz (100%) rename stable/docker-compose/{2.0.31 => 2.0.32}/ix_values.yaml (96%) rename stable/docker-compose/{2.0.31 => 2.0.32}/questions.yaml (100%) rename stable/docker-compose/{2.0.31 => 2.0.32}/templates/common.yaml (100%) rename stable/docker-compose/{2.0.31 => 2.0.32}/values.yaml (100%) delete mode 100644 stable/drawio/2.0.35/Chart.lock rename stable/drawio/{2.0.35 => 2.0.36}/CHANGELOG.md (90%) create mode 100644 stable/drawio/2.0.36/Chart.lock rename stable/drawio/{2.0.35 => 2.0.36}/Chart.yaml (95%) rename stable/drawio/{2.0.35 => 2.0.36}/README.md (94%) rename stable/drawio/{2.0.35 => 2.0.36}/app-readme.md (100%) rename stable/drawio/{2.0.35 => 2.0.36}/charts/common-10.4.12.tgz (100%) rename stable/drawio/{2.0.35 => 2.0.36}/ix_values.yaml (78%) rename stable/drawio/{2.0.35 => 2.0.36}/questions.yaml (100%) rename stable/drawio/{2.0.35 => 2.0.36}/templates/common.yaml (100%) rename stable/drawio/{2.0.35 => 2.0.36}/values.yaml (100%) delete mode 100644 stable/filezilla/4.0.29/Chart.lock rename stable/filezilla/{4.0.29 => 4.0.30}/CHANGELOG.md (90%) create mode 100644 stable/filezilla/4.0.30/Chart.lock rename stable/filezilla/{4.0.29 => 4.0.30}/Chart.yaml (98%) rename stable/filezilla/{4.0.29 => 4.0.30}/README.md (98%) rename stable/filezilla/{4.0.29 => 4.0.30}/app-readme.md (100%) rename stable/filezilla/{4.0.29 => 4.0.30}/charts/common-10.4.12.tgz (100%) rename stable/filezilla/{4.0.29 => 4.0.30}/ix_values.yaml (82%) rename stable/filezilla/{4.0.29 => 4.0.30}/questions.yaml (100%) rename stable/filezilla/{4.0.29 => 4.0.30}/templates/common.yaml (100%) rename stable/filezilla/{4.0.29 => 4.0.30}/values.yaml (100%) create mode 100644 stable/grocy/11.0.35/CHANGELOG.md create mode 100644 stable/grocy/11.0.35/Chart.lock create mode 100644 stable/grocy/11.0.35/Chart.yaml create mode 100644 stable/grocy/11.0.35/README.md create mode 100644 stable/grocy/11.0.35/app-readme.md rename stable/{jdownloader2/8.0.27 => grocy/11.0.35}/charts/common-10.4.12.tgz (100%) create mode 100644 stable/grocy/11.0.35/ix_values.yaml create mode 100644 stable/grocy/11.0.35/questions.yaml rename stable/{jdownloader2/8.0.27 => grocy/11.0.35}/templates/common.yaml (100%) rename stable/{jdownloader2/8.0.27 => grocy/11.0.35}/values.yaml (100%) create mode 100644 stable/home-assistant/15.0.42/CHANGELOG.md create mode 100644 stable/home-assistant/15.0.42/Chart.lock create mode 100644 stable/home-assistant/15.0.42/Chart.yaml create mode 100644 stable/home-assistant/15.0.42/README.md create mode 100644 stable/home-assistant/15.0.42/app-readme.md rename stable/{kavita/2.0.27 => home-assistant/15.0.42}/charts/common-10.4.12.tgz (100%) rename stable/{vikunja/3.0.40 => home-assistant/15.0.42}/charts/postgresql-8.0.56.tgz (100%) create mode 100644 stable/home-assistant/15.0.42/ix_values.yaml create mode 100644 stable/home-assistant/15.0.42/questions.yaml create mode 100644 stable/home-assistant/15.0.42/templates/common.yaml rename stable/{kavita/2.0.27 => home-assistant/15.0.42}/values.yaml (100%) create mode 100644 stable/jackett/11.0.61/CHANGELOG.md create mode 100644 stable/jackett/11.0.61/Chart.lock create mode 100644 stable/jackett/11.0.61/Chart.yaml create mode 100644 stable/jackett/11.0.61/README.md create mode 100644 stable/jackett/11.0.61/app-readme.md rename stable/{komga/6.0.31 => jackett/11.0.61}/charts/common-10.4.12.tgz (100%) create mode 100644 stable/jackett/11.0.61/ix_values.yaml create mode 100644 stable/jackett/11.0.61/questions.yaml rename stable/{kavita/2.0.27 => jackett/11.0.61}/templates/common.yaml (100%) rename stable/{komga/6.0.31 => jackett/11.0.61}/values.yaml (100%) delete mode 100644 stable/jdownloader2/8.0.27/Chart.lock rename stable/jdownloader2/{8.0.27 => 8.0.28}/CHANGELOG.md (88%) rename stable/{docker-compose/2.0.31 => jdownloader2/8.0.28}/Chart.lock (80%) rename stable/jdownloader2/{8.0.27 => 8.0.28}/Chart.yaml (96%) rename stable/jdownloader2/{8.0.27 => 8.0.28}/README.md (95%) rename stable/jdownloader2/{8.0.27 => 8.0.28}/app-readme.md (100%) rename stable/{omada-controller/6.0.49 => jdownloader2/8.0.28}/charts/common-10.4.12.tgz (100%) rename stable/jdownloader2/{8.0.27 => 8.0.28}/ix_values.yaml (94%) rename stable/jdownloader2/{8.0.27 => 8.0.28}/questions.yaml (100%) rename stable/{komga/6.0.31 => jdownloader2/8.0.28}/templates/common.yaml (100%) rename stable/{omada-controller/6.0.49 => jdownloader2/8.0.28}/values.yaml (100%) delete mode 100644 stable/kavita/2.0.27/Chart.lock rename stable/kavita/{2.0.27 => 2.0.28}/CHANGELOG.md (91%) create mode 100644 stable/kavita/2.0.28/Chart.lock rename stable/kavita/{2.0.27 => 2.0.28}/Chart.yaml (95%) rename stable/kavita/{2.0.27 => 2.0.28}/README.md (95%) rename stable/kavita/{2.0.27 => 2.0.28}/app-readme.md (100%) rename stable/{openspeedtest/1.0.25 => kavita/2.0.28}/charts/common-10.4.12.tgz (100%) rename stable/kavita/{2.0.27 => 2.0.28}/ix_values.yaml (83%) rename stable/kavita/{2.0.27 => 2.0.28}/questions.yaml (100%) rename stable/{omada-controller/6.0.49 => kavita/2.0.28}/templates/common.yaml (100%) rename stable/{openspeedtest/1.0.25 => kavita/2.0.28}/values.yaml (100%) delete mode 100644 stable/komga/6.0.31/Chart.lock rename stable/komga/{6.0.31 => 6.0.32}/CHANGELOG.md (90%) create mode 100644 stable/komga/6.0.32/Chart.lock rename stable/komga/{6.0.31 => 6.0.32}/Chart.yaml (95%) rename stable/komga/{6.0.31 => 6.0.32}/README.md (94%) rename stable/komga/{6.0.31 => 6.0.32}/app-readme.md (100%) rename stable/{prometheus/4.0.62 => komga/6.0.32}/charts/common-10.4.12.tgz (100%) rename stable/komga/{6.0.31 => 6.0.32}/ix_values.yaml (77%) rename stable/komga/{6.0.31 => 6.0.32}/questions.yaml (100%) rename stable/{openspeedtest/1.0.25 => komga/6.0.32}/templates/common.yaml (100%) rename stable/{prometheus/4.0.62 => komga/6.0.32}/values.yaml (100%) delete mode 100644 stable/omada-controller/6.0.49/Chart.lock rename stable/omada-controller/{6.0.49 => 6.0.50}/CHANGELOG.md (91%) create mode 100644 stable/omada-controller/6.0.50/Chart.lock rename stable/omada-controller/{6.0.49 => 6.0.50}/Chart.yaml (98%) rename stable/omada-controller/{6.0.49 => 6.0.50}/README.md (98%) rename stable/omada-controller/{6.0.49 => 6.0.50}/app-readme.md (100%) rename stable/{rsshub/3.0.66 => omada-controller/6.0.50}/charts/common-10.4.12.tgz (100%) rename stable/omada-controller/{6.0.49 => 6.0.50}/ix_values.yaml (93%) rename stable/omada-controller/{6.0.49 => 6.0.50}/questions.yaml (100%) rename stable/{rsshub/3.0.66 => omada-controller/6.0.50}/templates/common.yaml (100%) rename stable/{rsshub/3.0.66 => omada-controller/6.0.50}/values.yaml (100%) delete mode 100644 stable/openspeedtest/1.0.25/Chart.lock rename stable/openspeedtest/{1.0.25 => 1.0.26}/CHANGELOG.md (91%) create mode 100644 stable/openspeedtest/1.0.26/Chart.lock rename stable/openspeedtest/{1.0.25 => 1.0.26}/Chart.yaml (98%) rename stable/openspeedtest/{1.0.25 => 1.0.26}/README.md (98%) rename stable/openspeedtest/{1.0.25 => 1.0.26}/app-readme.md (100%) rename stable/{vikunja/3.0.40 => openspeedtest/1.0.26}/charts/common-10.4.12.tgz (100%) rename stable/openspeedtest/{1.0.25 => 1.0.26}/ix_values.yaml (79%) rename stable/openspeedtest/{1.0.25 => 1.0.26}/questions.yaml (100%) rename stable/{wekan/4.0.35 => openspeedtest/1.0.26}/templates/common.yaml (100%) rename stable/{vikunja/3.0.40 => openspeedtest/1.0.26}/values.yaml (100%) create mode 100644 stable/plex/10.1.1/CHANGELOG.md create mode 100644 stable/plex/10.1.1/Chart.lock create mode 100644 stable/plex/10.1.1/Chart.yaml create mode 100644 stable/plex/10.1.1/README.md create mode 100644 stable/plex/10.1.1/app-readme.md rename stable/{wekan/4.0.35 => plex/10.1.1}/charts/common-10.4.12.tgz (100%) create mode 100644 stable/plex/10.1.1/ix_values.yaml create mode 100644 stable/plex/10.1.1/questions.yaml create mode 100644 stable/plex/10.1.1/templates/common.yaml rename stable/{wekan/4.0.35 => plex/10.1.1}/values.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/CHANGELOG.md (91%) rename stable/prometheus/{4.0.62 => 4.0.63}/Chart.lock (89%) rename stable/prometheus/{4.0.62 => 4.0.63}/Chart.yaml (98%) rename stable/prometheus/{4.0.62 => 4.0.63}/README.md (98%) rename stable/prometheus/{4.0.62 => 4.0.63}/app-readme.md (100%) create mode 100644 stable/prometheus/4.0.63/charts/common-10.4.12.tgz rename stable/prometheus/{4.0.62 => 4.0.63}/charts/kube-state-metrics-3.1.6.tgz (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/charts/node-exporter-3.0.8.tgz (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/crds/crd-alertmanager-config.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/crds/crd-alertmanager.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/crds/crd-podmonitor.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/crds/crd-probes.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/crds/crd-prometheus.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/crds/crd-prometheusrules.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/crds/crd-servicemonitor.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/crds/crd-thanosrulers.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/ix_values.yaml (99%) rename stable/prometheus/{4.0.62 => 4.0.63}/questions.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/_helpers.tpl (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/alertmanager/_alertmanager.tpl (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/alertmanager/secrets.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/alertmanager/serviceaccount.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/alertmanager/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/common.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/core-dns/service.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/core-dns/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/kube-apiserver/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/kube-controller-manager/endpoints.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/kube-controller-manager/service.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/kube-controller-manager/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/kube-scheduler/endpoints.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/kube-scheduler/service.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/kube-scheduler/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/exporters/kubelet/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/operator/_args.tpl (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/operator/configmap.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/operator/servicemonitor.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/prometheus/_additionalPrometheusRules.tpl (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/prometheus/_additionalScrapeJobs.tpl (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/prometheus/_prometheus.tpl (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/prometheus/_servicemonitor.tpl (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/prometheus/clusterrole.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/prometheus/clusterrolebinding.yaml (100%) rename stable/prometheus/{4.0.62 => 4.0.63}/templates/prometheus/serviceaccount.yaml (100%) create mode 100644 stable/prometheus/4.0.63/values.yaml rename stable/rsshub/{3.0.66 => 3.0.67}/CHANGELOG.md (92%) rename {incubator/appsmith/2.0.38 => stable/rsshub/3.0.67}/Chart.lock (85%) rename stable/rsshub/{3.0.66 => 3.0.67}/Chart.yaml (98%) rename stable/rsshub/{3.0.66 => 3.0.67}/README.md (98%) rename stable/rsshub/{3.0.66 => 3.0.67}/app-readme.md (100%) create mode 100644 stable/rsshub/3.0.67/charts/common-10.4.12.tgz rename stable/rsshub/{3.0.66 => 3.0.67}/charts/redis-3.0.54.tgz (100%) rename stable/rsshub/{3.0.66 => 3.0.67}/ix_values.yaml (93%) rename stable/rsshub/{3.0.66 => 3.0.67}/questions.yaml (100%) create mode 100644 stable/rsshub/3.0.67/templates/common.yaml create mode 100644 stable/rsshub/3.0.67/values.yaml create mode 100644 stable/sabnzbd/11.0.29/CHANGELOG.md create mode 100644 stable/sabnzbd/11.0.29/Chart.lock create mode 100644 stable/sabnzbd/11.0.29/Chart.yaml create mode 100644 stable/sabnzbd/11.0.29/README.md create mode 100644 stable/sabnzbd/11.0.29/app-readme.md create mode 100644 stable/sabnzbd/11.0.29/charts/common-10.4.12.tgz create mode 100644 stable/sabnzbd/11.0.29/ix_values.yaml create mode 100644 stable/sabnzbd/11.0.29/questions.yaml create mode 100644 stable/sabnzbd/11.0.29/templates/common.yaml create mode 100644 stable/sabnzbd/11.0.29/values.yaml rename stable/vikunja/{3.0.40 => 3.0.41}/CHANGELOG.md (90%) rename stable/vikunja/{3.0.40 => 3.0.41}/Chart.lock (88%) rename stable/vikunja/{3.0.40 => 3.0.41}/Chart.yaml (96%) rename stable/vikunja/{3.0.40 => 3.0.41}/README.md (94%) rename stable/vikunja/{3.0.40 => 3.0.41}/app-readme.md (100%) create mode 100644 stable/vikunja/3.0.41/charts/common-10.4.12.tgz create mode 100644 stable/vikunja/3.0.41/charts/postgresql-8.0.56.tgz rename stable/vikunja/{3.0.40 => 3.0.41}/charts/redis-3.0.54.tgz (100%) rename stable/vikunja/{3.0.40 => 3.0.41}/ix_values.yaml (97%) rename stable/vikunja/{3.0.40 => 3.0.41}/questions.yaml (100%) rename stable/vikunja/{3.0.40 => 3.0.41}/templates/_secrets.tpl (100%) rename stable/vikunja/{3.0.40 => 3.0.41}/templates/common.yaml (100%) create mode 100644 stable/vikunja/3.0.41/values.yaml rename stable/wekan/{4.0.35 => 4.0.36}/CHANGELOG.md (89%) rename stable/wekan/{4.0.35 => 4.0.36}/Chart.lock (85%) rename stable/wekan/{4.0.35 => 4.0.36}/Chart.yaml (95%) rename stable/wekan/{4.0.35 => 4.0.36}/README.md (94%) rename stable/wekan/{4.0.35 => 4.0.36}/app-readme.md (100%) create mode 100644 stable/wekan/4.0.36/charts/common-10.4.12.tgz rename stable/wekan/{4.0.35 => 4.0.36}/charts/mongodb-1.0.56.tgz (100%) rename stable/wekan/{4.0.35 => 4.0.36}/ix_values.yaml (98%) rename stable/wekan/{4.0.35 => 4.0.36}/questions.yaml (100%) create mode 100644 stable/wekan/4.0.36/templates/common.yaml create mode 100644 stable/wekan/4.0.36/values.yaml diff --git a/dependency/clickhouse/1.0.10/CHANGELOG.md b/dependency/clickhouse/1.0.11/CHANGELOG.md similarity index 91% rename from dependency/clickhouse/1.0.10/CHANGELOG.md rename to dependency/clickhouse/1.0.11/CHANGELOG.md index 4bdcfd7c44f..9f45904f73a 100644 --- a/dependency/clickhouse/1.0.10/CHANGELOG.md +++ b/dependency/clickhouse/1.0.11/CHANGELOG.md @@ -2,6 +2,15 @@ +## [clickhouse-1.0.11](https://github.com/truecharts/charts/compare/clickhouse-1.0.10...clickhouse-1.0.11) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [clickhouse-1.0.10](https://github.com/truecharts/charts/compare/clickhouse-1.0.9...clickhouse-1.0.10) (2022-08-17) ### Chore @@ -88,12 +97,3 @@ ### Chore - update helm chart common to v10.4.7 ([#3277](https://github.com/truecharts/apps/issues/3277)) - - - - -## [clickhouse-1.0.1](https://github.com/truecharts/apps/compare/clickhouse-1.0.0...clickhouse-1.0.1) (2022-07-22) - -### Chore - -- Bump all charts to generate config and container references due to huge increase of repository diff --git a/dependency/clickhouse/1.0.10/Chart.lock b/dependency/clickhouse/1.0.11/Chart.lock similarity index 80% rename from dependency/clickhouse/1.0.10/Chart.lock rename to dependency/clickhouse/1.0.11/Chart.lock index dc39b3b1394..b8aa16ea69d 100644 --- a/dependency/clickhouse/1.0.10/Chart.lock +++ b/dependency/clickhouse/1.0.11/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.13 digest: sha256:dff2afab395456500f99d795e50abf621284962a955cc8ebf9d43f6f0b2bf6e4 -generated: "2022-08-17T18:24:04.01181234Z" +generated: "2022-08-19T05:51:20.6836744Z" diff --git a/dependency/clickhouse/1.0.10/Chart.yaml b/dependency/clickhouse/1.0.11/Chart.yaml similarity index 95% rename from dependency/clickhouse/1.0.10/Chart.yaml rename to dependency/clickhouse/1.0.11/Chart.yaml index b480840a361..e3c46c69b18 100644 --- a/dependency/clickhouse/1.0.10/Chart.yaml +++ b/dependency/clickhouse/1.0.11/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: "22.7.3.5" +appVersion: "22.8.1.209" dependencies: - name: common repository: https://library-charts.truecharts.org @@ -23,7 +23,7 @@ sources: - https://clickhouse.com/ - https://hub.docker.com/r/yandex/clickhouse-server type: application -version: 1.0.10 +version: 1.0.11 annotations: truecharts.org/catagories: | - database diff --git a/dependency/clickhouse/1.0.10/README.md b/dependency/clickhouse/1.0.11/README.md similarity index 95% rename from dependency/clickhouse/1.0.10/README.md rename to dependency/clickhouse/1.0.11/README.md index 16d92335c01..b0915c53db6 100644 --- a/dependency/clickhouse/1.0.10/README.md +++ b/dependency/clickhouse/1.0.11/README.md @@ -1,6 +1,6 @@ # clickhouse -![Version: 1.0.10](https://img.shields.io/badge/Version-1.0.10-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 22.7.3.5](https://img.shields.io/badge/AppVersion-22.7.3.5-informational?style=flat-square) +![Version: 1.0.11](https://img.shields.io/badge/Version-1.0.11-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 22.8.1.209](https://img.shields.io/badge/AppVersion-22.8.1.209-informational?style=flat-square) ClickHouse is a column-oriented database management system (DBMS) for online analytical processing of queries (OLAP). diff --git a/dependency/clickhouse/1.0.10/app-readme.md b/dependency/clickhouse/1.0.11/app-readme.md similarity index 100% rename from dependency/clickhouse/1.0.10/app-readme.md rename to dependency/clickhouse/1.0.11/app-readme.md diff --git a/dependency/clickhouse/1.0.10/charts/common-10.4.13.tgz b/dependency/clickhouse/1.0.11/charts/common-10.4.13.tgz similarity index 100% rename from dependency/clickhouse/1.0.10/charts/common-10.4.13.tgz rename to dependency/clickhouse/1.0.11/charts/common-10.4.13.tgz diff --git a/dependency/clickhouse/1.0.10/ix_values.yaml b/dependency/clickhouse/1.0.11/ix_values.yaml similarity index 95% rename from dependency/clickhouse/1.0.10/ix_values.yaml rename to dependency/clickhouse/1.0.11/ix_values.yaml index 9bf6f5a16a5..06c6eb2309c 100644 --- a/dependency/clickhouse/1.0.10/ix_values.yaml +++ b/dependency/clickhouse/1.0.11/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/clickhouse pullPolicy: IfNotPresent - tag: 22.7.3.5@sha256:c97a3593bd91989b13ae65ec143e10a3ca5083a949956e26ba8dd311b85b81bf + tag: 22.8.1.2097@sha256:b48e4472cf843aaaa60eb28f821934a8e7df7eabad904494746e48b29654d9db controller: type: statefulset diff --git a/dependency/clickhouse/1.0.10/questions.yaml b/dependency/clickhouse/1.0.11/questions.yaml similarity index 100% rename from dependency/clickhouse/1.0.10/questions.yaml rename to dependency/clickhouse/1.0.11/questions.yaml diff --git a/dependency/clickhouse/1.0.10/templates/common.yaml b/dependency/clickhouse/1.0.11/templates/common.yaml similarity index 100% rename from dependency/clickhouse/1.0.10/templates/common.yaml rename to dependency/clickhouse/1.0.11/templates/common.yaml diff --git a/dependency/clickhouse/1.0.10/values.yaml b/dependency/clickhouse/1.0.11/values.yaml similarity index 100% rename from dependency/clickhouse/1.0.10/values.yaml rename to dependency/clickhouse/1.0.11/values.yaml diff --git a/incubator/adguard-home/1.0.29/CHANGELOG.md b/incubator/adguard-home/1.0.30/CHANGELOG.md similarity index 91% rename from incubator/adguard-home/1.0.29/CHANGELOG.md rename to incubator/adguard-home/1.0.30/CHANGELOG.md index b3ed11031ba..ff0801be9ef 100644 --- a/incubator/adguard-home/1.0.29/CHANGELOG.md +++ b/incubator/adguard-home/1.0.30/CHANGELOG.md @@ -2,6 +2,15 @@ +## [adguard-home-1.0.30](https://github.com/truecharts/charts/compare/adguard-home-1.0.29...adguard-home-1.0.30) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [adguard-home-1.0.29](https://github.com/truecharts/charts/compare/adguard-home-1.0.28...adguard-home-1.0.29) (2022-08-12) ### Chore @@ -88,12 +97,3 @@ ## [ariang-0.0.12](https://github.com/truecharts/apps/compare/ariang-0.0.11...ariang-0.0.12) (2022-07-19) ### Chore - -- Update Readme and Description on SCALE - - - -## [ariang-0.0.11](https://github.com/truecharts/apps/compare/ariang-0.0.10...ariang-0.0.11) (2022-07-18) - -### Chore - diff --git a/incubator/adguard-home/1.0.29/Chart.lock b/incubator/adguard-home/1.0.30/Chart.lock similarity index 80% rename from incubator/adguard-home/1.0.29/Chart.lock rename to incubator/adguard-home/1.0.30/Chart.lock index 159b5de1dae..9c5054e2790 100644 --- a/incubator/adguard-home/1.0.29/Chart.lock +++ b/incubator/adguard-home/1.0.30/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.12 digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-12T21:25:10.401787116Z" +generated: "2022-08-19T05:51:20.785810446Z" diff --git a/incubator/adguard-home/1.0.29/Chart.yaml b/incubator/adguard-home/1.0.30/Chart.yaml similarity index 95% rename from incubator/adguard-home/1.0.29/Chart.yaml rename to incubator/adguard-home/1.0.30/Chart.yaml index dde42663560..b964747cd16 100644 --- a/incubator/adguard-home/1.0.29/Chart.yaml +++ b/incubator/adguard-home/1.0.30/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: "0.107.9" +appVersion: "0.107.10" dependencies: - name: common repository: https://library-charts.truecharts.org @@ -19,7 +19,7 @@ name: adguard-home sources: - https://github.com/truecharts/charts/tree/master/charts/incubator/adguard-home - https://hub.docker.com/r/adguard/adguardhome -version: 1.0.29 +version: 1.0.30 annotations: truecharts.org/catagories: | - media diff --git a/incubator/adguard-home/1.0.29/README.md b/incubator/adguard-home/1.0.30/README.md similarity index 94% rename from incubator/adguard-home/1.0.29/README.md rename to incubator/adguard-home/1.0.30/README.md index 846aff05150..3288fda2b1b 100644 --- a/incubator/adguard-home/1.0.29/README.md +++ b/incubator/adguard-home/1.0.30/README.md @@ -1,6 +1,6 @@ # adguard-home -![Version: 1.0.29](https://img.shields.io/badge/Version-1.0.29-informational?style=flat-square) ![AppVersion: 0.107.9](https://img.shields.io/badge/AppVersion-0.107.9-informational?style=flat-square) +![Version: 1.0.30](https://img.shields.io/badge/Version-1.0.30-informational?style=flat-square) ![AppVersion: 0.107.10](https://img.shields.io/badge/AppVersion-0.107.10-informational?style=flat-square) Free and open source, powerful network-wide ads & trackers blocking DNS server. diff --git a/incubator/adguard-home/1.0.29/app-readme.md b/incubator/adguard-home/1.0.30/app-readme.md similarity index 100% rename from incubator/adguard-home/1.0.29/app-readme.md rename to incubator/adguard-home/1.0.30/app-readme.md diff --git a/incubator/adguard-home/1.0.29/charts/common-10.4.12.tgz b/incubator/adguard-home/1.0.30/charts/common-10.4.12.tgz similarity index 100% rename from incubator/adguard-home/1.0.29/charts/common-10.4.12.tgz rename to incubator/adguard-home/1.0.30/charts/common-10.4.12.tgz diff --git a/incubator/adguard-home/1.0.29/ix_values.yaml b/incubator/adguard-home/1.0.30/ix_values.yaml similarity index 95% rename from incubator/adguard-home/1.0.29/ix_values.yaml rename to incubator/adguard-home/1.0.30/ix_values.yaml index 2091be26873..8e368d8f3e9 100644 --- a/incubator/adguard-home/1.0.29/ix_values.yaml +++ b/incubator/adguard-home/1.0.30/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/adguard-home - tag: 0.107.9@sha256:2a424c299bab657bbdc1c8ef589cefe606cd3d045e4b40747b02b9d193f63acf + tag: 0.107.10@sha256:d47ec6f242a89ba3ee0a1690a00686cabb1b59acdeb186cfc1907d1c9e4d5e1d pullPolicy: IfNotPresent securityContext: diff --git a/incubator/adguard-home/1.0.29/questions.yaml b/incubator/adguard-home/1.0.30/questions.yaml similarity index 100% rename from incubator/adguard-home/1.0.29/questions.yaml rename to incubator/adguard-home/1.0.30/questions.yaml diff --git a/incubator/adguard-home/1.0.29/templates/common.yaml b/incubator/adguard-home/1.0.30/templates/common.yaml similarity index 100% rename from incubator/adguard-home/1.0.29/templates/common.yaml rename to incubator/adguard-home/1.0.30/templates/common.yaml diff --git a/incubator/adguard-home/1.0.29/values.yaml b/incubator/adguard-home/1.0.30/values.yaml similarity index 100% rename from incubator/adguard-home/1.0.29/values.yaml rename to incubator/adguard-home/1.0.30/values.yaml diff --git a/incubator/adguardhome-sync/0.0.18/CHANGELOG.md b/incubator/adguardhome-sync/0.0.19/CHANGELOG.md similarity index 88% rename from incubator/adguardhome-sync/0.0.18/CHANGELOG.md rename to incubator/adguardhome-sync/0.0.19/CHANGELOG.md index 8ee726cb304..68941471cac 100644 --- a/incubator/adguardhome-sync/0.0.18/CHANGELOG.md +++ b/incubator/adguardhome-sync/0.0.19/CHANGELOG.md @@ -2,6 +2,15 @@ +## [adguardhome-sync-0.0.19](https://github.com/truecharts/charts/compare/adguardhome-sync-0.0.18...adguardhome-sync-0.0.19) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [adguardhome-sync-0.0.18](https://github.com/truecharts/charts/compare/adguardhome-sync-0.0.17...adguardhome-sync-0.0.18) (2022-08-12) ### Chore diff --git a/incubator/gokapi/0.0.21/Chart.lock b/incubator/adguardhome-sync/0.0.19/Chart.lock similarity index 80% rename from incubator/gokapi/0.0.21/Chart.lock rename to incubator/adguardhome-sync/0.0.19/Chart.lock index 7c86811f76e..226c79713f4 100644 --- a/incubator/gokapi/0.0.21/Chart.lock +++ b/incubator/adguardhome-sync/0.0.19/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.12 digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-12T21:38:43.733041085Z" +generated: "2022-08-19T05:51:20.774680696Z" diff --git a/incubator/adguardhome-sync/0.0.18/Chart.yaml b/incubator/adguardhome-sync/0.0.19/Chart.yaml similarity index 98% rename from incubator/adguardhome-sync/0.0.18/Chart.yaml rename to incubator/adguardhome-sync/0.0.19/Chart.yaml index 3ae0da18b25..be606e86cf9 100644 --- a/incubator/adguardhome-sync/0.0.18/Chart.yaml +++ b/incubator/adguardhome-sync/0.0.19/Chart.yaml @@ -27,4 +27,4 @@ sources: - https://github.com/orgs/linuxserver/packages/container/package/adguardhome-sync - https://github.com/linuxserver/docker-adguardhome-sync#readme type: application -version: 0.0.18 +version: 0.0.19 diff --git a/incubator/adguardhome-sync/0.0.18/README.md b/incubator/adguardhome-sync/0.0.19/README.md similarity index 98% rename from incubator/adguardhome-sync/0.0.18/README.md rename to incubator/adguardhome-sync/0.0.19/README.md index aba3323760d..d1b3640dcb9 100644 --- a/incubator/adguardhome-sync/0.0.18/README.md +++ b/incubator/adguardhome-sync/0.0.19/README.md @@ -1,6 +1,6 @@ # adguardhome-sync -![Version: 0.0.18](https://img.shields.io/badge/Version-0.0.18-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: 0.0.19](https://img.shields.io/badge/Version-0.0.19-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) Adguardhome-sync(https://github.com/bakito/adguardhome-sync/) is a tool to synchronize AdGuardHome config to replica instances. diff --git a/incubator/adguardhome-sync/0.0.18/app-readme.md b/incubator/adguardhome-sync/0.0.19/app-readme.md similarity index 100% rename from incubator/adguardhome-sync/0.0.18/app-readme.md rename to incubator/adguardhome-sync/0.0.19/app-readme.md diff --git a/incubator/adguardhome-sync/0.0.18/charts/common-10.4.12.tgz b/incubator/adguardhome-sync/0.0.19/charts/common-10.4.12.tgz similarity index 100% rename from incubator/adguardhome-sync/0.0.18/charts/common-10.4.12.tgz rename to incubator/adguardhome-sync/0.0.19/charts/common-10.4.12.tgz diff --git a/incubator/adguardhome-sync/0.0.18/ix_values.yaml b/incubator/adguardhome-sync/0.0.19/ix_values.yaml similarity index 84% rename from incubator/adguardhome-sync/0.0.18/ix_values.yaml rename to incubator/adguardhome-sync/0.0.19/ix_values.yaml index 041922215aa..d62be217d18 100644 --- a/incubator/adguardhome-sync/0.0.18/ix_values.yaml +++ b/incubator/adguardhome-sync/0.0.19/ix_values.yaml @@ -4,7 +4,7 @@ env: image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/adguardhome-sync - tag: latest@sha256:6439f9f27c46346747c831e5f270930e6064bd49e0946e190f8c922f07bba9b3 + tag: latest@sha256:b6ab47ea8a194621897ca9c0c7f22a0b0b504f7c231c6937765fa755f1f8f0b0 persistence: config: enabled: true diff --git a/incubator/adguardhome-sync/0.0.18/questions.yaml b/incubator/adguardhome-sync/0.0.19/questions.yaml similarity index 100% rename from incubator/adguardhome-sync/0.0.18/questions.yaml rename to incubator/adguardhome-sync/0.0.19/questions.yaml diff --git a/incubator/adguardhome-sync/0.0.18/templates/common.yaml b/incubator/adguardhome-sync/0.0.19/templates/common.yaml similarity index 100% rename from incubator/adguardhome-sync/0.0.18/templates/common.yaml rename to incubator/adguardhome-sync/0.0.19/templates/common.yaml diff --git a/incubator/adguardhome-sync/0.0.18/values.yaml b/incubator/adguardhome-sync/0.0.19/values.yaml similarity index 100% rename from incubator/adguardhome-sync/0.0.18/values.yaml rename to incubator/adguardhome-sync/0.0.19/values.yaml diff --git a/incubator/appsmith/2.0.38/CHANGELOG.md b/incubator/appsmith/2.0.39/CHANGELOG.md similarity index 91% rename from incubator/appsmith/2.0.38/CHANGELOG.md rename to incubator/appsmith/2.0.39/CHANGELOG.md index 9d3327f5cad..5d7650cfa0c 100644 --- a/incubator/appsmith/2.0.38/CHANGELOG.md +++ b/incubator/appsmith/2.0.39/CHANGELOG.md @@ -2,6 +2,15 @@ +## [appsmith-2.0.39](https://github.com/truecharts/charts/compare/appsmith-2.0.38...appsmith-2.0.39) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [appsmith-2.0.38](https://github.com/truecharts/charts/compare/appsmith-2.0.37...appsmith-2.0.38) (2022-08-17) ### Chore @@ -88,12 +97,3 @@ - Auto-update chart README [skip ci] - update docker general non-major ([#3295](https://github.com/truecharts/apps/issues/3295)) - - - -## [appsmith-2.0.30](https://github.com/truecharts/apps/compare/appsmith-2.0.29...appsmith-2.0.30) (2022-07-25) - -### Chore - -- update docker general non-major ([#3295](https://github.com/truecharts/apps/issues/3295)) - diff --git a/stable/rsshub/3.0.66/Chart.lock b/incubator/appsmith/2.0.39/Chart.lock similarity index 85% rename from stable/rsshub/3.0.66/Chart.lock rename to incubator/appsmith/2.0.39/Chart.lock index 6985dcbcb65..50b242d24ed 100644 --- a/stable/rsshub/3.0.66/Chart.lock +++ b/incubator/appsmith/2.0.39/Chart.lock @@ -6,4 +6,4 @@ dependencies: repository: https://charts.truecharts.org version: 3.0.54 digest: sha256:b74ee33dd218820c4f5740b6cfb268b7386f9baaf708dc48267c44759ff7f3a5 -generated: "2022-08-18T08:58:49.471137899Z" +generated: "2022-08-19T05:51:28.964196304Z" diff --git a/incubator/appsmith/2.0.38/Chart.yaml b/incubator/appsmith/2.0.39/Chart.yaml similarity index 96% rename from incubator/appsmith/2.0.38/Chart.yaml rename to incubator/appsmith/2.0.39/Chart.yaml index 80baea20ff3..226930a7498 100644 --- a/incubator/appsmith/2.0.38/Chart.yaml +++ b/incubator/appsmith/2.0.39/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: "1.7.12" +appVersion: "1.7.13" dependencies: - name: common repository: https://library-charts.truecharts.org @@ -26,7 +26,7 @@ name: appsmith sources: - https://github.com/truecharts/charts/tree/master/charts/incubator/appsmith - https://github.com/appsmithorg/appsmith -version: 2.0.38 +version: 2.0.39 annotations: truecharts.org/catagories: | - productivity diff --git a/incubator/appsmith/2.0.38/README.md b/incubator/appsmith/2.0.39/README.md similarity index 94% rename from incubator/appsmith/2.0.38/README.md rename to incubator/appsmith/2.0.39/README.md index 2111f93bb3f..a881b998c86 100644 --- a/incubator/appsmith/2.0.38/README.md +++ b/incubator/appsmith/2.0.39/README.md @@ -1,6 +1,6 @@ # appsmith -![Version: 2.0.38](https://img.shields.io/badge/Version-2.0.38-informational?style=flat-square) ![AppVersion: 1.7.12](https://img.shields.io/badge/AppVersion-1.7.12-informational?style=flat-square) +![Version: 2.0.39](https://img.shields.io/badge/Version-2.0.39-informational?style=flat-square) ![AppVersion: 1.7.13](https://img.shields.io/badge/AppVersion-1.7.13-informational?style=flat-square) Turn any datasource into an internal app in minutes. Appsmith lets you drag-and-drop UI components to build pages, connect to any API, database or GraphQL source and write logic with JavaScript objects. diff --git a/incubator/appsmith/2.0.38/app-readme.md b/incubator/appsmith/2.0.39/app-readme.md similarity index 100% rename from incubator/appsmith/2.0.38/app-readme.md rename to incubator/appsmith/2.0.39/app-readme.md diff --git a/incubator/appsmith/2.0.38/charts/common-10.4.12.tgz b/incubator/appsmith/2.0.39/charts/common-10.4.12.tgz similarity index 100% rename from incubator/appsmith/2.0.38/charts/common-10.4.12.tgz rename to incubator/appsmith/2.0.39/charts/common-10.4.12.tgz diff --git a/incubator/appsmith/2.0.38/charts/redis-3.0.54.tgz b/incubator/appsmith/2.0.39/charts/redis-3.0.54.tgz similarity index 100% rename from incubator/appsmith/2.0.38/charts/redis-3.0.54.tgz rename to incubator/appsmith/2.0.39/charts/redis-3.0.54.tgz diff --git a/incubator/appsmith/2.0.38/ix_values.yaml b/incubator/appsmith/2.0.39/ix_values.yaml similarity index 90% rename from incubator/appsmith/2.0.38/ix_values.yaml rename to incubator/appsmith/2.0.39/ix_values.yaml index 78c0889f613..3beec92d05d 100644 --- a/incubator/appsmith/2.0.38/ix_values.yaml +++ b/incubator/appsmith/2.0.39/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/appsmith - tag: 1.7.12@sha256:0bd674658ff0afcb3b7a96bb5398398cc80880a42b2fd421c4cc5d53e17cd43e + tag: 1.7.13@sha256:6b2e9998909abd94089366c6511c10a77295f07d6512b6cdafc3ae3439060834 pullPolicy: IfNotPresent securityContext: diff --git a/incubator/appsmith/2.0.38/questions.yaml b/incubator/appsmith/2.0.39/questions.yaml similarity index 100% rename from incubator/appsmith/2.0.38/questions.yaml rename to incubator/appsmith/2.0.39/questions.yaml diff --git a/incubator/appsmith/2.0.38/templates/common.yaml b/incubator/appsmith/2.0.39/templates/common.yaml similarity index 100% rename from incubator/appsmith/2.0.38/templates/common.yaml rename to incubator/appsmith/2.0.39/templates/common.yaml diff --git a/incubator/appsmith/2.0.38/values.yaml b/incubator/appsmith/2.0.39/values.yaml similarity index 100% rename from incubator/appsmith/2.0.38/values.yaml rename to incubator/appsmith/2.0.39/values.yaml diff --git a/incubator/cryptpad/0.0.24/CHANGELOG.md b/incubator/cryptpad/0.0.25/CHANGELOG.md similarity index 89% rename from incubator/cryptpad/0.0.24/CHANGELOG.md rename to incubator/cryptpad/0.0.25/CHANGELOG.md index 8796beb96fb..715593ddae0 100644 --- a/incubator/cryptpad/0.0.24/CHANGELOG.md +++ b/incubator/cryptpad/0.0.25/CHANGELOG.md @@ -2,6 +2,15 @@ +## [cryptpad-0.0.25](https://github.com/truecharts/charts/compare/cryptpad-0.0.24...cryptpad-0.0.25) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [cryptpad-0.0.24](https://github.com/truecharts/charts/compare/cryptpad-0.0.23...cryptpad-0.0.24) (2022-08-17) ### Chore @@ -88,12 +97,3 @@ - update docker general non-major ([#3313](https://github.com/truecharts/apps/issues/3313)) - - -## [cryptpad-0.0.14](https://github.com/truecharts/apps/compare/cryptpad-0.0.13...cryptpad-0.0.14) (2022-07-26) - -### Chore - -- update home links ([#3291](https://github.com/truecharts/apps/issues/3291)) - - update helm general non-major helm releases ([#3302](https://github.com/truecharts/apps/issues/3302)) - diff --git a/incubator/adguardhome-sync/0.0.18/Chart.lock b/incubator/cryptpad/0.0.25/Chart.lock similarity index 80% rename from incubator/adguardhome-sync/0.0.18/Chart.lock rename to incubator/cryptpad/0.0.25/Chart.lock index 9625c8e4350..61ec035de3f 100644 --- a/incubator/adguardhome-sync/0.0.18/Chart.lock +++ b/incubator/cryptpad/0.0.25/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.12 digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-12T21:25:10.472209154Z" +generated: "2022-08-19T05:51:44.572318841Z" diff --git a/incubator/cryptpad/0.0.24/Chart.yaml b/incubator/cryptpad/0.0.25/Chart.yaml similarity index 98% rename from incubator/cryptpad/0.0.24/Chart.yaml rename to incubator/cryptpad/0.0.25/Chart.yaml index 8393d019508..bc29c4e3edc 100644 --- a/incubator/cryptpad/0.0.24/Chart.yaml +++ b/incubator/cryptpad/0.0.25/Chart.yaml @@ -28,4 +28,4 @@ sources: - https://cryptpad.fr/ - https://hub.docker.com/r/promasu/cryptpad/ type: application -version: 0.0.24 +version: 0.0.25 diff --git a/incubator/cryptpad/0.0.24/README.md b/incubator/cryptpad/0.0.25/README.md similarity index 98% rename from incubator/cryptpad/0.0.24/README.md rename to incubator/cryptpad/0.0.25/README.md index 1a9e4c1215c..6cd41440bc2 100644 --- a/incubator/cryptpad/0.0.24/README.md +++ b/incubator/cryptpad/0.0.25/README.md @@ -1,6 +1,6 @@ # cryptpad -![Version: 0.0.24](https://img.shields.io/badge/Version-0.0.24-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: 0.0.25](https://img.shields.io/badge/Version-0.0.25-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) CryptPad is the Zero Knowledge realtime collaborative editor.[br]mkdir -p /mnt/user/appdata/cryptpad/config [/br]wget -O /mnt/user/appdata/cryptpad/config/config.js https://raw.githubusercontent.com/xwiki-labs/cryptpad/main/config/config.example.js diff --git a/incubator/cryptpad/0.0.24/app-readme.md b/incubator/cryptpad/0.0.25/app-readme.md similarity index 100% rename from incubator/cryptpad/0.0.24/app-readme.md rename to incubator/cryptpad/0.0.25/app-readme.md diff --git a/incubator/cryptpad/0.0.24/charts/common-10.4.12.tgz b/incubator/cryptpad/0.0.25/charts/common-10.4.12.tgz similarity index 100% rename from incubator/cryptpad/0.0.24/charts/common-10.4.12.tgz rename to incubator/cryptpad/0.0.25/charts/common-10.4.12.tgz diff --git a/incubator/cryptpad/0.0.24/ix_values.yaml b/incubator/cryptpad/0.0.25/ix_values.yaml similarity index 91% rename from incubator/cryptpad/0.0.24/ix_values.yaml rename to incubator/cryptpad/0.0.25/ix_values.yaml index bb43f0caaf4..a2f2b7ec2d0 100644 --- a/incubator/cryptpad/0.0.24/ix_values.yaml +++ b/incubator/cryptpad/0.0.25/ix_values.yaml @@ -2,7 +2,7 @@ env: {} image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/cryptpad - tag: latest@sha256:77b931f58d6075108612dcd992f53fae4d735adb442501b4198c9db951b1f27d + tag: latest@sha256:7ed944c59d3917d94e67a2d3ee9a5b7691dacd5c48371d752440ce4d36076630 persistence: blobpath: enabled: true diff --git a/incubator/cryptpad/0.0.24/questions.yaml b/incubator/cryptpad/0.0.25/questions.yaml similarity index 100% rename from incubator/cryptpad/0.0.24/questions.yaml rename to incubator/cryptpad/0.0.25/questions.yaml diff --git a/incubator/cryptpad/0.0.24/templates/common.yaml b/incubator/cryptpad/0.0.25/templates/common.yaml similarity index 100% rename from incubator/cryptpad/0.0.24/templates/common.yaml rename to incubator/cryptpad/0.0.25/templates/common.yaml diff --git a/incubator/cryptpad/0.0.24/values.yaml b/incubator/cryptpad/0.0.25/values.yaml similarity index 100% rename from incubator/cryptpad/0.0.24/values.yaml rename to incubator/cryptpad/0.0.25/values.yaml diff --git a/incubator/gokapi/0.0.21/CHANGELOG.md b/incubator/gokapi/0.0.22/CHANGELOG.md similarity index 91% rename from incubator/gokapi/0.0.21/CHANGELOG.md rename to incubator/gokapi/0.0.22/CHANGELOG.md index aea7a4a4c5b..ee8c8d64349 100644 --- a/incubator/gokapi/0.0.21/CHANGELOG.md +++ b/incubator/gokapi/0.0.22/CHANGELOG.md @@ -2,6 +2,15 @@ +## [gokapi-0.0.22](https://github.com/truecharts/charts/compare/gokapi-0.0.21...gokapi-0.0.22) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [gokapi-0.0.21](https://github.com/truecharts/charts/compare/gokapi-0.0.20...gokapi-0.0.21) (2022-08-12) ### Chore @@ -88,12 +97,3 @@ ## [gokapi-0.0.12](https://github.com/truecharts/apps/compare/gokapi-0.0.11...gokapi-0.0.12) (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)) - - - - diff --git a/incubator/cryptpad/0.0.24/Chart.lock b/incubator/gokapi/0.0.22/Chart.lock similarity index 80% rename from incubator/cryptpad/0.0.24/Chart.lock rename to incubator/gokapi/0.0.22/Chart.lock index 668d6d9bef0..868b4668cac 100644 --- a/incubator/cryptpad/0.0.24/Chart.lock +++ b/incubator/gokapi/0.0.22/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.12 digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-17T18:25:53.476373584Z" +generated: "2022-08-19T05:51:44.674228685Z" diff --git a/incubator/gokapi/0.0.21/Chart.yaml b/incubator/gokapi/0.0.22/Chart.yaml similarity index 95% rename from incubator/gokapi/0.0.21/Chart.yaml rename to incubator/gokapi/0.0.22/Chart.yaml index 3823c1347b5..f290da1b6ed 100644 --- a/incubator/gokapi/0.0.21/Chart.yaml +++ b/incubator/gokapi/0.0.22/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: "1.5.2" +appVersion: "1.6.1" dependencies: - name: common repository: https://library-charts.truecharts.org @@ -23,7 +23,7 @@ sources: - https://github.com/Forceu/gokapi - https://hub.docker.com/r/f0rc3/gokapi type: application -version: 0.0.21 +version: 0.0.22 annotations: truecharts.org/SCALE-support: "true" truecharts.org/catagories: | diff --git a/incubator/gokapi/0.0.21/README.md b/incubator/gokapi/0.0.22/README.md similarity index 95% rename from incubator/gokapi/0.0.21/README.md rename to incubator/gokapi/0.0.22/README.md index 597d7acbcab..c8116b3d8b0 100644 --- a/incubator/gokapi/0.0.21/README.md +++ b/incubator/gokapi/0.0.22/README.md @@ -1,6 +1,6 @@ # gokapi -![Version: 0.0.21](https://img.shields.io/badge/Version-0.0.21-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.5.2](https://img.shields.io/badge/AppVersion-1.5.2-informational?style=flat-square) +![Version: 0.0.22](https://img.shields.io/badge/Version-0.0.22-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.6.1](https://img.shields.io/badge/AppVersion-1.6.1-informational?style=flat-square) Gokapi is a lightweight server to share files, which expire after a set amount of downloads or days. diff --git a/incubator/gokapi/0.0.21/app-readme.md b/incubator/gokapi/0.0.22/app-readme.md similarity index 100% rename from incubator/gokapi/0.0.21/app-readme.md rename to incubator/gokapi/0.0.22/app-readme.md diff --git a/incubator/gokapi/0.0.21/charts/common-10.4.12.tgz b/incubator/gokapi/0.0.22/charts/common-10.4.12.tgz similarity index 100% rename from incubator/gokapi/0.0.21/charts/common-10.4.12.tgz rename to incubator/gokapi/0.0.22/charts/common-10.4.12.tgz diff --git a/incubator/gokapi/0.0.21/ix_values.yaml b/incubator/gokapi/0.0.22/ix_values.yaml similarity index 87% rename from incubator/gokapi/0.0.21/ix_values.yaml rename to incubator/gokapi/0.0.22/ix_values.yaml index aac62ad45b5..adcdb8a81e1 100644 --- a/incubator/gokapi/0.0.21/ix_values.yaml +++ b/incubator/gokapi/0.0.22/ix_values.yaml @@ -1,7 +1,7 @@ image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/gokapi - tag: v1.5.2@sha256:93f81b8327e60a745c62dd9e4d3cf5317cdd426f4e84e80a844067ec0a080051 + tag: 1.6.1@sha256:b215f17f794beb2205f835629da84a0d128912f44d5932346560ed069b4299a5 secretEnv: GOKAPI_PASSWORD: "changme" diff --git a/incubator/gokapi/0.0.21/questions.yaml b/incubator/gokapi/0.0.22/questions.yaml similarity index 100% rename from incubator/gokapi/0.0.21/questions.yaml rename to incubator/gokapi/0.0.22/questions.yaml diff --git a/incubator/gokapi/0.0.21/templates/common.yaml b/incubator/gokapi/0.0.22/templates/common.yaml similarity index 100% rename from incubator/gokapi/0.0.21/templates/common.yaml rename to incubator/gokapi/0.0.22/templates/common.yaml diff --git a/incubator/gokapi/0.0.21/values.yaml b/incubator/gokapi/0.0.22/values.yaml similarity index 100% rename from incubator/gokapi/0.0.21/values.yaml rename to incubator/gokapi/0.0.22/values.yaml diff --git a/incubator/openproject/0.0.19/CHANGELOG.md b/incubator/openproject/0.0.20/CHANGELOG.md similarity index 92% rename from incubator/openproject/0.0.19/CHANGELOG.md rename to incubator/openproject/0.0.20/CHANGELOG.md index 01398a7189f..1679ba1126d 100644 --- a/incubator/openproject/0.0.19/CHANGELOG.md +++ b/incubator/openproject/0.0.20/CHANGELOG.md @@ -2,6 +2,15 @@ +## [openproject-0.0.20](https://github.com/truecharts/charts/compare/openproject-0.0.19...openproject-0.0.20) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [openproject-0.0.19](https://github.com/truecharts/charts/compare/openproject-0.0.18...openproject-0.0.19) (2022-08-17) ### Chore @@ -88,12 +97,3 @@ - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) - - -## [openproject-0.0.12](https://github.com/truecharts/apps/compare/openproject-0.0.11...openproject-0.0.12) (2022-07-23) - -### Chore - -- update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) - - diff --git a/incubator/openproject/0.0.19/Chart.lock b/incubator/openproject/0.0.20/Chart.lock similarity index 85% rename from incubator/openproject/0.0.19/Chart.lock rename to incubator/openproject/0.0.20/Chart.lock index 9dd7d28108f..69eb92a3836 100644 --- a/incubator/openproject/0.0.19/Chart.lock +++ b/incubator/openproject/0.0.20/Chart.lock @@ -6,4 +6,4 @@ dependencies: repository: https://charts.truecharts.org/ version: 8.0.56 digest: sha256:097eb1bdd62beead090a77b403231f4722578ef6f4e8cd6238749d5657208181 -generated: "2022-08-17T18:27:18.116960392Z" +generated: "2022-08-19T05:51:52.701537384Z" diff --git a/incubator/openproject/0.0.19/Chart.yaml b/incubator/openproject/0.0.20/Chart.yaml similarity index 98% rename from incubator/openproject/0.0.19/Chart.yaml rename to incubator/openproject/0.0.20/Chart.yaml index 5715f779ed8..6222c86f95e 100644 --- a/incubator/openproject/0.0.19/Chart.yaml +++ b/incubator/openproject/0.0.20/Chart.yaml @@ -26,7 +26,7 @@ sources: - http://openproject.org - https://hub.docker.com/u/openproject type: application -version: 0.0.19 +version: 0.0.20 annotations: truecharts.org/SCALE-support: "true" truecharts.org/catagories: | diff --git a/incubator/openproject/0.0.19/README.md b/incubator/openproject/0.0.20/README.md similarity index 98% rename from incubator/openproject/0.0.19/README.md rename to incubator/openproject/0.0.20/README.md index 9cf8623daa6..c762ff4cf2d 100644 --- a/incubator/openproject/0.0.19/README.md +++ b/incubator/openproject/0.0.20/README.md @@ -1,6 +1,6 @@ # openproject -![Version: 0.0.19](https://img.shields.io/badge/Version-0.0.19-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 12](https://img.shields.io/badge/AppVersion-12-informational?style=flat-square) +![Version: 0.0.20](https://img.shields.io/badge/Version-0.0.20-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 12](https://img.shields.io/badge/AppVersion-12-informational?style=flat-square) OpenProject is a web-based project management system for location-independent team collaboration. diff --git a/incubator/openproject/0.0.19/app-readme.md b/incubator/openproject/0.0.20/app-readme.md similarity index 100% rename from incubator/openproject/0.0.19/app-readme.md rename to incubator/openproject/0.0.20/app-readme.md diff --git a/incubator/openproject/0.0.19/charts/common-10.4.12.tgz b/incubator/openproject/0.0.20/charts/common-10.4.12.tgz similarity index 100% rename from incubator/openproject/0.0.19/charts/common-10.4.12.tgz rename to incubator/openproject/0.0.20/charts/common-10.4.12.tgz diff --git a/incubator/openproject/0.0.19/charts/postgresql-8.0.56.tgz b/incubator/openproject/0.0.20/charts/postgresql-8.0.56.tgz similarity index 100% rename from incubator/openproject/0.0.19/charts/postgresql-8.0.56.tgz rename to incubator/openproject/0.0.20/charts/postgresql-8.0.56.tgz diff --git a/incubator/openproject/0.0.19/ix_values.yaml b/incubator/openproject/0.0.20/ix_values.yaml similarity index 89% rename from incubator/openproject/0.0.19/ix_values.yaml rename to incubator/openproject/0.0.20/ix_values.yaml index 9ec25f1767e..a718afbd652 100644 --- a/incubator/openproject/0.0.19/ix_values.yaml +++ b/incubator/openproject/0.0.20/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/openproject pullPolicy: IfNotPresent - tag: v12@sha256:ce9f2f23793ac94e3a1c6545389bd4a92ba5de006d10e02d37e1ccac45c8a8e7 + tag: v12@sha256:f95dd7310783a8b58550d2b4c65a3c968c42877fbc6d721d014f3daee512c2b1 securityContext: readOnlyRootFilesystem: false diff --git a/incubator/openproject/0.0.19/questions.yaml b/incubator/openproject/0.0.20/questions.yaml similarity index 100% rename from incubator/openproject/0.0.19/questions.yaml rename to incubator/openproject/0.0.20/questions.yaml diff --git a/incubator/openproject/0.0.19/templates/_secrets.tpl b/incubator/openproject/0.0.20/templates/_secrets.tpl similarity index 100% rename from incubator/openproject/0.0.19/templates/_secrets.tpl rename to incubator/openproject/0.0.20/templates/_secrets.tpl diff --git a/incubator/openproject/0.0.19/templates/common.yaml b/incubator/openproject/0.0.20/templates/common.yaml similarity index 100% rename from incubator/openproject/0.0.19/templates/common.yaml rename to incubator/openproject/0.0.20/templates/common.yaml diff --git a/incubator/openproject/0.0.19/values.yaml b/incubator/openproject/0.0.20/values.yaml similarity index 100% rename from incubator/openproject/0.0.19/values.yaml rename to incubator/openproject/0.0.20/values.yaml diff --git a/incubator/rimgo/0.0.27/Chart.lock b/incubator/rimgo/0.0.27/Chart.lock deleted file mode 100644 index ce43f2e7955..00000000000 --- a/incubator/rimgo/0.0.27/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-18T08:57:13.780907825Z" diff --git a/incubator/rimgo/0.0.27/CHANGELOG.md b/incubator/rimgo/0.0.28/CHANGELOG.md similarity index 91% rename from incubator/rimgo/0.0.27/CHANGELOG.md rename to incubator/rimgo/0.0.28/CHANGELOG.md index c57bc860c35..e049ab0bd79 100644 --- a/incubator/rimgo/0.0.27/CHANGELOG.md +++ b/incubator/rimgo/0.0.28/CHANGELOG.md @@ -2,6 +2,15 @@ +## [rimgo-0.0.28](https://github.com/truecharts/charts/compare/rimgo-0.0.27...rimgo-0.0.28) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [rimgo-0.0.27](https://github.com/truecharts/charts/compare/rimgo-0.0.26...rimgo-0.0.27) (2022-08-18) ### Chore @@ -88,12 +97,3 @@ - update docker general non-major - - -## [rimgo-0.0.17](https://github.com/truecharts/apps/compare/rimgo-0.0.16...rimgo-0.0.17) (2022-07-29) - -### Chore - -- update docker general non-major ([#3339](https://github.com/truecharts/apps/issues/3339)) - - diff --git a/incubator/vaulthunters/0.0.16/Chart.lock b/incubator/rimgo/0.0.28/Chart.lock similarity index 80% rename from incubator/vaulthunters/0.0.16/Chart.lock rename to incubator/rimgo/0.0.28/Chart.lock index 4b07fc410d9..f87f71183a2 100644 --- a/incubator/vaulthunters/0.0.16/Chart.lock +++ b/incubator/rimgo/0.0.28/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.12 digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-12T22:00:39.65516099Z" +generated: "2022-08-19T05:51:55.2683627Z" diff --git a/incubator/rimgo/0.0.27/Chart.yaml b/incubator/rimgo/0.0.28/Chart.yaml similarity index 97% rename from incubator/rimgo/0.0.27/Chart.yaml rename to incubator/rimgo/0.0.28/Chart.yaml index 3cf4537ee8f..9195d0c7219 100644 --- a/incubator/rimgo/0.0.27/Chart.yaml +++ b/incubator/rimgo/0.0.28/Chart.yaml @@ -25,4 +25,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/incubator/rimgo - https://quay.io/repository/pussthecatorg/rimgo type: application -version: 0.0.27 +version: 0.0.28 diff --git a/incubator/rimgo/0.0.27/README.md b/incubator/rimgo/0.0.28/README.md similarity index 98% rename from incubator/rimgo/0.0.27/README.md rename to incubator/rimgo/0.0.28/README.md index f0dbfa0cbf3..ee94e769f95 100644 --- a/incubator/rimgo/0.0.27/README.md +++ b/incubator/rimgo/0.0.28/README.md @@ -1,6 +1,6 @@ # rimgo -![Version: 0.0.27](https://img.shields.io/badge/Version-0.0.27-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: 0.0.28](https://img.shields.io/badge/Version-0.0.28-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) Alternative Imgur front-end diff --git a/incubator/rimgo/0.0.27/app-readme.md b/incubator/rimgo/0.0.28/app-readme.md similarity index 100% rename from incubator/rimgo/0.0.27/app-readme.md rename to incubator/rimgo/0.0.28/app-readme.md diff --git a/incubator/rimgo/0.0.27/charts/common-10.4.12.tgz b/incubator/rimgo/0.0.28/charts/common-10.4.12.tgz similarity index 100% rename from incubator/rimgo/0.0.27/charts/common-10.4.12.tgz rename to incubator/rimgo/0.0.28/charts/common-10.4.12.tgz diff --git a/incubator/rimgo/0.0.27/ix_values.yaml b/incubator/rimgo/0.0.28/ix_values.yaml similarity index 84% rename from incubator/rimgo/0.0.27/ix_values.yaml rename to incubator/rimgo/0.0.28/ix_values.yaml index f4745c64d39..4ee3162b1b4 100644 --- a/incubator/rimgo/0.0.27/ix_values.yaml +++ b/incubator/rimgo/0.0.28/ix_values.yaml @@ -5,7 +5,7 @@ env: image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/rimgo - tag: latest@sha256:e1b5dd3afa8e89e1de067031e943d3a02d789039f4b9175b507a835be4fd3b34 + tag: latest@sha256:8b12fcee157af99e6c959b25ccc9d6fc3825d8fc47cb7c849577c33ba0a615e7 persistence: {} podSecurityContext: runAsGroup: 0 diff --git a/incubator/rimgo/0.0.27/questions.yaml b/incubator/rimgo/0.0.28/questions.yaml similarity index 100% rename from incubator/rimgo/0.0.27/questions.yaml rename to incubator/rimgo/0.0.28/questions.yaml diff --git a/incubator/rimgo/0.0.27/templates/common.yaml b/incubator/rimgo/0.0.28/templates/common.yaml similarity index 100% rename from incubator/rimgo/0.0.27/templates/common.yaml rename to incubator/rimgo/0.0.28/templates/common.yaml diff --git a/incubator/rimgo/0.0.27/values.yaml b/incubator/rimgo/0.0.28/values.yaml similarity index 100% rename from incubator/rimgo/0.0.27/values.yaml rename to incubator/rimgo/0.0.28/values.yaml diff --git a/incubator/tachidesk-docker/0.0.17/Chart.lock b/incubator/tachidesk-docker/0.0.17/Chart.lock deleted file mode 100644 index 161a1e34b16..00000000000 --- a/incubator/tachidesk-docker/0.0.17/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-14T09:22:42.030704472Z" diff --git a/incubator/tachidesk-docker/0.0.17/CHANGELOG.md b/incubator/tachidesk-docker/0.0.18/CHANGELOG.md similarity index 90% rename from incubator/tachidesk-docker/0.0.17/CHANGELOG.md rename to incubator/tachidesk-docker/0.0.18/CHANGELOG.md index 3bf4ddba269..a883459d93f 100644 --- a/incubator/tachidesk-docker/0.0.17/CHANGELOG.md +++ b/incubator/tachidesk-docker/0.0.18/CHANGELOG.md @@ -2,6 +2,15 @@ +## [tachidesk-docker-0.0.18](https://github.com/truecharts/charts/compare/tachidesk-docker-0.0.17...tachidesk-docker-0.0.18) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [tachidesk-docker-0.0.17](https://github.com/truecharts/charts/compare/tachidesk-docker-0.0.16...tachidesk-docker-0.0.17) (2022-08-14) ### Chore @@ -88,12 +97,3 @@ -## [tachidesk-docker-0.0.11]tachidesk-docker-0.0.11 (2022-07-22) - -### Chore - -- Auto-update chart README [skip ci] - - Auto-update chart README [skip ci] - - Bump all charts to generate config and container references due to huge increase of repository - - Move Dev to incubator and some cleanup - diff --git a/incubator/tachidesk-docker/0.0.18/Chart.lock b/incubator/tachidesk-docker/0.0.18/Chart.lock new file mode 100644 index 00000000000..bfdd8146c52 --- /dev/null +++ b/incubator/tachidesk-docker/0.0.18/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:52:06.376828345Z" diff --git a/incubator/tachidesk-docker/0.0.17/Chart.yaml b/incubator/tachidesk-docker/0.0.18/Chart.yaml similarity index 98% rename from incubator/tachidesk-docker/0.0.17/Chart.yaml rename to incubator/tachidesk-docker/0.0.18/Chart.yaml index 9e8cab29fcb..f1fae881b62 100644 --- a/incubator/tachidesk-docker/0.0.17/Chart.yaml +++ b/incubator/tachidesk-docker/0.0.18/Chart.yaml @@ -26,4 +26,4 @@ sources: - https://github.com/Suwayomi/Tachidesk-Server - https://github.com/suwayomi/docker-tachidesk type: application -version: 0.0.17 +version: 0.0.18 diff --git a/incubator/tachidesk-docker/0.0.17/README.md b/incubator/tachidesk-docker/0.0.18/README.md similarity index 98% rename from incubator/tachidesk-docker/0.0.17/README.md rename to incubator/tachidesk-docker/0.0.18/README.md index 57a2cc7cd95..1ad6579e641 100644 --- a/incubator/tachidesk-docker/0.0.17/README.md +++ b/incubator/tachidesk-docker/0.0.18/README.md @@ -1,6 +1,6 @@ # tachidesk-docker -![Version: 0.0.17](https://img.shields.io/badge/Version-0.0.17-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: 0.0.18](https://img.shields.io/badge/Version-0.0.18-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) The official Tachidesk Docker-Container. diff --git a/incubator/tachidesk-docker/0.0.17/app-readme.md b/incubator/tachidesk-docker/0.0.18/app-readme.md similarity index 100% rename from incubator/tachidesk-docker/0.0.17/app-readme.md rename to incubator/tachidesk-docker/0.0.18/app-readme.md diff --git a/incubator/tachidesk-docker/0.0.17/charts/common-10.4.12.tgz b/incubator/tachidesk-docker/0.0.18/charts/common-10.4.12.tgz similarity index 100% rename from incubator/tachidesk-docker/0.0.17/charts/common-10.4.12.tgz rename to incubator/tachidesk-docker/0.0.18/charts/common-10.4.12.tgz diff --git a/incubator/tachidesk-docker/0.0.17/ix_values.yaml b/incubator/tachidesk-docker/0.0.18/ix_values.yaml similarity index 88% rename from incubator/tachidesk-docker/0.0.17/ix_values.yaml rename to incubator/tachidesk-docker/0.0.18/ix_values.yaml index afc4fb92bed..17286a852e5 100644 --- a/incubator/tachidesk-docker/0.0.17/ix_values.yaml +++ b/incubator/tachidesk-docker/0.0.18/ix_values.yaml @@ -2,7 +2,7 @@ env: {} image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/tachidesk-docker - tag: latest@sha256:bad881b080ad5740b8ea37bfcbde0110bb04998fb382317f70ad00edeed19034 + tag: latest@sha256:79b2b4f6e98ccb19a609286bab43b27243ece01b8d959621083dd1f5046929c1 persistence: appdata: enabled: true diff --git a/incubator/tachidesk-docker/0.0.17/questions.yaml b/incubator/tachidesk-docker/0.0.18/questions.yaml similarity index 100% rename from incubator/tachidesk-docker/0.0.17/questions.yaml rename to incubator/tachidesk-docker/0.0.18/questions.yaml diff --git a/incubator/tachidesk-docker/0.0.17/templates/common.yaml b/incubator/tachidesk-docker/0.0.18/templates/common.yaml similarity index 100% rename from incubator/tachidesk-docker/0.0.17/templates/common.yaml rename to incubator/tachidesk-docker/0.0.18/templates/common.yaml diff --git a/incubator/tachidesk-docker/0.0.17/values.yaml b/incubator/tachidesk-docker/0.0.18/values.yaml similarity index 100% rename from incubator/tachidesk-docker/0.0.17/values.yaml rename to incubator/tachidesk-docker/0.0.18/values.yaml diff --git a/incubator/vaulthunters/0.0.16/CHANGELOG.md b/incubator/vaulthunters/0.0.17/CHANGELOG.md similarity index 91% rename from incubator/vaulthunters/0.0.16/CHANGELOG.md rename to incubator/vaulthunters/0.0.17/CHANGELOG.md index 24bbe1f9e8e..1b237a59821 100644 --- a/incubator/vaulthunters/0.0.16/CHANGELOG.md +++ b/incubator/vaulthunters/0.0.17/CHANGELOG.md @@ -2,6 +2,15 @@ +## [vaulthunters-0.0.17](https://github.com/truecharts/charts/compare/vaulthunters-0.0.16...vaulthunters-0.0.17) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [vaulthunters-0.0.16](https://github.com/truecharts/charts/compare/vaulthunters-0.0.15...vaulthunters-0.0.16) (2022-08-12) ### Chore @@ -88,12 +97,3 @@ - Bump all charts to generate config and container references due to huge increase of repository - Move Dev to incubator and some cleanup - - - -## [vaulthunters-0.0.10]vaulthunters-0.0.10 (2022-07-22) - -### Chore - -- Auto-update chart README [skip ci] - - Move Dev to incubator and some cleanup diff --git a/incubator/vaulthunters/0.0.17/Chart.lock b/incubator/vaulthunters/0.0.17/Chart.lock new file mode 100644 index 00000000000..6ce38924ae0 --- /dev/null +++ b/incubator/vaulthunters/0.0.17/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:52:06.492735925Z" diff --git a/incubator/vaulthunters/0.0.16/Chart.yaml b/incubator/vaulthunters/0.0.17/Chart.yaml similarity index 98% rename from incubator/vaulthunters/0.0.16/Chart.yaml rename to incubator/vaulthunters/0.0.17/Chart.yaml index 8064da9fca1..7cf8feb8c67 100644 --- a/incubator/vaulthunters/0.0.16/Chart.yaml +++ b/incubator/vaulthunters/0.0.17/Chart.yaml @@ -26,4 +26,4 @@ sources: - https://vaulthunters.gg - https://hub.docker.com/repository/docker/goobaroo/vaulthunters type: application -version: 0.0.16 +version: 0.0.17 diff --git a/incubator/vaulthunters/0.0.16/README.md b/incubator/vaulthunters/0.0.17/README.md similarity index 98% rename from incubator/vaulthunters/0.0.16/README.md rename to incubator/vaulthunters/0.0.17/README.md index 69acb397af8..b2f18bc0378 100644 --- a/incubator/vaulthunters/0.0.16/README.md +++ b/incubator/vaulthunters/0.0.17/README.md @@ -1,6 +1,6 @@ # vaulthunters -![Version: 0.0.16](https://img.shields.io/badge/Version-0.0.16-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: 0.0.17](https://img.shields.io/badge/Version-0.0.17-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) Vault Hunters - 1.13.4 Modded Minecraft Server[br][br][b]Vault Hunters - 1.13.4[/b][br]Level up, loot the vaults and defeat the bosses to collect 16 artifacts![br][br]Setup:[br][li]You must accept the EULA by setting the [b]EULA[/b] variable to [span style='color: #00E800;']true[/span] or the install will fail.[br]Optional:[br][li]You can setup a comma separated list of players who will have admin privileges in game by setting [b]OPS[/b] diff --git a/incubator/vaulthunters/0.0.16/app-readme.md b/incubator/vaulthunters/0.0.17/app-readme.md similarity index 100% rename from incubator/vaulthunters/0.0.16/app-readme.md rename to incubator/vaulthunters/0.0.17/app-readme.md diff --git a/incubator/vaulthunters/0.0.16/charts/common-10.4.12.tgz b/incubator/vaulthunters/0.0.17/charts/common-10.4.12.tgz similarity index 100% rename from incubator/vaulthunters/0.0.16/charts/common-10.4.12.tgz rename to incubator/vaulthunters/0.0.17/charts/common-10.4.12.tgz diff --git a/incubator/vaulthunters/0.0.16/ix_values.yaml b/incubator/vaulthunters/0.0.17/ix_values.yaml similarity index 85% rename from incubator/vaulthunters/0.0.16/ix_values.yaml rename to incubator/vaulthunters/0.0.17/ix_values.yaml index d9d2eff854b..19def6f1049 100644 --- a/incubator/vaulthunters/0.0.16/ix_values.yaml +++ b/incubator/vaulthunters/0.0.17/ix_values.yaml @@ -5,7 +5,7 @@ env: image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/vaulthunters - tag: latest@sha256:aedef733b5f40101888a91bf56987a19fa5836e994666926291de2ed7518306d + tag: latest@sha256:e3bfcc47a10ee2d45200c6f8fc6deb6b6fd9f12db6c5a2843b2608b7535a8807 persistence: data: enabled: true diff --git a/incubator/vaulthunters/0.0.16/questions.yaml b/incubator/vaulthunters/0.0.17/questions.yaml similarity index 100% rename from incubator/vaulthunters/0.0.16/questions.yaml rename to incubator/vaulthunters/0.0.17/questions.yaml diff --git a/incubator/vaulthunters/0.0.16/templates/common.yaml b/incubator/vaulthunters/0.0.17/templates/common.yaml similarity index 100% rename from incubator/vaulthunters/0.0.16/templates/common.yaml rename to incubator/vaulthunters/0.0.17/templates/common.yaml diff --git a/incubator/vaulthunters/0.0.16/values.yaml b/incubator/vaulthunters/0.0.17/values.yaml similarity index 100% rename from incubator/vaulthunters/0.0.16/values.yaml rename to incubator/vaulthunters/0.0.17/values.yaml diff --git a/incubator/vertex/0.0.24/Chart.lock b/incubator/vertex/0.0.24/Chart.lock deleted file mode 100644 index 4e32dccbffb..00000000000 --- a/incubator/vertex/0.0.24/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-18T08:57:13.768840432Z" diff --git a/incubator/vertex/0.0.24/CHANGELOG.md b/incubator/vertex/0.0.25/CHANGELOG.md similarity index 91% rename from incubator/vertex/0.0.24/CHANGELOG.md rename to incubator/vertex/0.0.25/CHANGELOG.md index 1b5c7c31a83..783e9722a15 100644 --- a/incubator/vertex/0.0.24/CHANGELOG.md +++ b/incubator/vertex/0.0.25/CHANGELOG.md @@ -2,6 +2,15 @@ +## [vertex-0.0.25](https://github.com/truecharts/charts/compare/vertex-0.0.24...vertex-0.0.25) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [vertex-0.0.24](https://github.com/truecharts/charts/compare/vertex-0.0.23...vertex-0.0.24) (2022-08-18) ### Chore @@ -88,12 +97,3 @@ - -## [vertex-0.0.15](https://github.com/truecharts/apps/compare/vertex-0.0.14...vertex-0.0.15) (2022-07-27) - -### Chore - -- update docker general non-major ([#3313](https://github.com/truecharts/apps/issues/3313)) - - - diff --git a/incubator/vertex/0.0.25/Chart.lock b/incubator/vertex/0.0.25/Chart.lock new file mode 100644 index 00000000000..eb26d24a631 --- /dev/null +++ b/incubator/vertex/0.0.25/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:52:16.531689154Z" diff --git a/incubator/vertex/0.0.24/Chart.yaml b/incubator/vertex/0.0.25/Chart.yaml similarity index 98% rename from incubator/vertex/0.0.24/Chart.yaml rename to incubator/vertex/0.0.25/Chart.yaml index 259e387ee71..cf144e283c9 100644 --- a/incubator/vertex/0.0.24/Chart.yaml +++ b/incubator/vertex/0.0.25/Chart.yaml @@ -28,4 +28,4 @@ sources: - https://gitlab.lswl.in/lswl/vertex - https://hub.docker.com/r/lswl/vertex type: application -version: 0.0.24 +version: 0.0.25 diff --git a/incubator/vertex/0.0.24/README.md b/incubator/vertex/0.0.25/README.md similarity index 98% rename from incubator/vertex/0.0.24/README.md rename to incubator/vertex/0.0.25/README.md index c942f120bed..dc72e03a2bd 100644 --- a/incubator/vertex/0.0.24/README.md +++ b/incubator/vertex/0.0.25/README.md @@ -1,6 +1,6 @@ # vertex -![Version: 0.0.24](https://img.shields.io/badge/Version-0.0.24-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: stable](https://img.shields.io/badge/AppVersion-stable-informational?style=flat-square) +![Version: 0.0.25](https://img.shields.io/badge/Version-0.0.25-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: stable](https://img.shields.io/badge/AppVersion-stable-informational?style=flat-square) Vertex , , , , PT diff --git a/incubator/vertex/0.0.24/app-readme.md b/incubator/vertex/0.0.25/app-readme.md similarity index 100% rename from incubator/vertex/0.0.24/app-readme.md rename to incubator/vertex/0.0.25/app-readme.md diff --git a/incubator/vertex/0.0.24/charts/common-10.4.12.tgz b/incubator/vertex/0.0.25/charts/common-10.4.12.tgz similarity index 100% rename from incubator/vertex/0.0.24/charts/common-10.4.12.tgz rename to incubator/vertex/0.0.25/charts/common-10.4.12.tgz diff --git a/incubator/vertex/0.0.24/ix_values.yaml b/incubator/vertex/0.0.25/ix_values.yaml similarity index 83% rename from incubator/vertex/0.0.24/ix_values.yaml rename to incubator/vertex/0.0.25/ix_values.yaml index 94cc9f68526..0cade03c30e 100644 --- a/incubator/vertex/0.0.24/ix_values.yaml +++ b/incubator/vertex/0.0.25/ix_values.yaml @@ -3,7 +3,7 @@ env: image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/vertex - tag: vstable@sha256:79a1de44ff217ade04a58579960f0933de242a9edd1054ce4e69012983a9b464 + tag: vstable@sha256:3c4f0e1d76955dcb4269005ab63efa4a210170892d80e3bbc81376e44112d209 persistence: config: enabled: true diff --git a/incubator/vertex/0.0.24/questions.yaml b/incubator/vertex/0.0.25/questions.yaml similarity index 100% rename from incubator/vertex/0.0.24/questions.yaml rename to incubator/vertex/0.0.25/questions.yaml diff --git a/incubator/vertex/0.0.24/templates/common.yaml b/incubator/vertex/0.0.25/templates/common.yaml similarity index 100% rename from incubator/vertex/0.0.24/templates/common.yaml rename to incubator/vertex/0.0.25/templates/common.yaml diff --git a/incubator/vertex/0.0.24/values.yaml b/incubator/vertex/0.0.25/values.yaml similarity index 100% rename from incubator/vertex/0.0.24/values.yaml rename to incubator/vertex/0.0.25/values.yaml diff --git a/incubator/virt-manager/0.0.27/Chart.lock b/incubator/virt-manager/0.0.27/Chart.lock deleted file mode 100644 index a7bf84fbae5..00000000000 --- a/incubator/virt-manager/0.0.27/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-18T08:57:35.294707268Z" diff --git a/incubator/virt-manager/0.0.27/CHANGELOG.md b/incubator/virt-manager/0.0.28/CHANGELOG.md similarity index 91% rename from incubator/virt-manager/0.0.27/CHANGELOG.md rename to incubator/virt-manager/0.0.28/CHANGELOG.md index 8c4185b525a..749c3d5a6ba 100644 --- a/incubator/virt-manager/0.0.27/CHANGELOG.md +++ b/incubator/virt-manager/0.0.28/CHANGELOG.md @@ -2,6 +2,15 @@ +## [virt-manager-0.0.28](https://github.com/truecharts/charts/compare/virt-manager-0.0.27...virt-manager-0.0.28) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [virt-manager-0.0.27](https://github.com/truecharts/charts/compare/virt-manager-0.0.26...virt-manager-0.0.27) (2022-08-18) ### Chore @@ -88,12 +97,3 @@ - update docker general non-major - - -## [virt-manager-0.0.17](https://github.com/truecharts/apps/compare/virt-manager-0.0.16...virt-manager-0.0.17) (2022-07-29) - -### Chore - -- update docker general non-major ([#3339](https://github.com/truecharts/apps/issues/3339)) - - diff --git a/incubator/virt-manager/0.0.28/Chart.lock b/incubator/virt-manager/0.0.28/Chart.lock new file mode 100644 index 00000000000..f84f3de05fd --- /dev/null +++ b/incubator/virt-manager/0.0.28/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:52:22.797551833Z" diff --git a/incubator/virt-manager/0.0.27/Chart.yaml b/incubator/virt-manager/0.0.28/Chart.yaml similarity index 98% rename from incubator/virt-manager/0.0.27/Chart.yaml rename to incubator/virt-manager/0.0.28/Chart.yaml index fc2865bdd52..e035b2416e9 100644 --- a/incubator/virt-manager/0.0.27/Chart.yaml +++ b/incubator/virt-manager/0.0.28/Chart.yaml @@ -25,4 +25,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/incubator/virt-manager - https://hub.docker.com/r/mber5/virt-manager type: application -version: 0.0.27 +version: 0.0.28 diff --git a/incubator/virt-manager/0.0.27/README.md b/incubator/virt-manager/0.0.28/README.md similarity index 98% rename from incubator/virt-manager/0.0.27/README.md rename to incubator/virt-manager/0.0.28/README.md index ec9e661098e..d173530f0df 100644 --- a/incubator/virt-manager/0.0.27/README.md +++ b/incubator/virt-manager/0.0.28/README.md @@ -1,6 +1,6 @@ # virt-manager -![Version: 0.0.27](https://img.shields.io/badge/Version-0.0.27-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: 0.0.28](https://img.shields.io/badge/Version-0.0.28-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) The virt-manager application is a desktop user interface for managing virtual machines through libvirt. diff --git a/incubator/virt-manager/0.0.27/app-readme.md b/incubator/virt-manager/0.0.28/app-readme.md similarity index 100% rename from incubator/virt-manager/0.0.27/app-readme.md rename to incubator/virt-manager/0.0.28/app-readme.md diff --git a/incubator/virt-manager/0.0.27/charts/common-10.4.12.tgz b/incubator/virt-manager/0.0.28/charts/common-10.4.12.tgz similarity index 100% rename from incubator/virt-manager/0.0.27/charts/common-10.4.12.tgz rename to incubator/virt-manager/0.0.28/charts/common-10.4.12.tgz diff --git a/incubator/virt-manager/0.0.27/ix_values.yaml b/incubator/virt-manager/0.0.28/ix_values.yaml similarity index 88% rename from incubator/virt-manager/0.0.27/ix_values.yaml rename to incubator/virt-manager/0.0.28/ix_values.yaml index 77da9f372ad..496de252f18 100644 --- a/incubator/virt-manager/0.0.27/ix_values.yaml +++ b/incubator/virt-manager/0.0.28/ix_values.yaml @@ -3,7 +3,7 @@ env: image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/virt-manager - tag: latest@sha256:90f7d0e91aae2509a16e92c0c37259633730902b00a9903df6342b9a50481103 + tag: latest@sha256:2beb39c30f4376c71841b8fb3fd47a32f89caf33a52dc8fd285c6051d18d6d7a persistence: devkvm: enabled: true diff --git a/incubator/virt-manager/0.0.27/questions.yaml b/incubator/virt-manager/0.0.28/questions.yaml similarity index 100% rename from incubator/virt-manager/0.0.27/questions.yaml rename to incubator/virt-manager/0.0.28/questions.yaml diff --git a/incubator/virt-manager/0.0.27/templates/common.yaml b/incubator/virt-manager/0.0.28/templates/common.yaml similarity index 100% rename from incubator/virt-manager/0.0.27/templates/common.yaml rename to incubator/virt-manager/0.0.28/templates/common.yaml diff --git a/incubator/virt-manager/0.0.27/values.yaml b/incubator/virt-manager/0.0.28/values.yaml similarity index 100% rename from incubator/virt-manager/0.0.27/values.yaml rename to incubator/virt-manager/0.0.28/values.yaml diff --git a/stable/custom-app/5.1.37/CHANGELOG.md b/stable/custom-app/5.1.38/CHANGELOG.md similarity index 92% rename from stable/custom-app/5.1.37/CHANGELOG.md rename to stable/custom-app/5.1.38/CHANGELOG.md index 3871027f55a..798eba7f2c5 100644 --- a/stable/custom-app/5.1.37/CHANGELOG.md +++ b/stable/custom-app/5.1.38/CHANGELOG.md @@ -2,6 +2,15 @@ +## [custom-app-5.1.38](https://github.com/truecharts/charts/compare/custom-app-5.1.37...custom-app-5.1.38) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [custom-app-5.1.37](https://github.com/truecharts/charts/compare/custom-app-5.1.36...custom-app-5.1.37) (2022-08-18) ### Chore @@ -88,12 +97,3 @@ ## [custom-app-5.1.27](https://github.com/truecharts/apps/compare/custom-app-5.1.26...custom-app-5.1.27) (2022-07-28) - -### Chore - -- update docker general non-major ([#3326](https://github.com/truecharts/apps/issues/3326)) - - - - -## [custom-app-5.1.26](https://github.com/truecharts/apps/compare/custom-app-5.1.25...custom-app-5.1.26) (2022-07-27) diff --git a/stable/custom-app/5.1.37/Chart.lock b/stable/custom-app/5.1.38/Chart.lock similarity index 80% rename from stable/custom-app/5.1.37/Chart.lock rename to stable/custom-app/5.1.38/Chart.lock index 613c9782ac5..e2a32c426e7 100644 --- a/stable/custom-app/5.1.37/Chart.lock +++ b/stable/custom-app/5.1.38/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.12 digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-18T08:57:36.00114815Z" +generated: "2022-08-19T05:52:27.40000058Z" diff --git a/stable/custom-app/5.1.37/Chart.yaml b/stable/custom-app/5.1.38/Chart.yaml similarity index 94% rename from stable/custom-app/5.1.37/Chart.yaml rename to stable/custom-app/5.1.38/Chart.yaml index e6c2a91988e..494afa2b76e 100644 --- a/stable/custom-app/5.1.37/Chart.yaml +++ b/stable/custom-app/5.1.38/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: "0.20.1736" +appVersion: "0.20.1740" dependencies: - name: common repository: https://library-charts.truecharts.org @@ -19,7 +19,7 @@ name: custom-app sources: - https://github.com/truecharts/charts/tree/master/charts/stable/custom-app type: application -version: 5.1.37 +version: 5.1.38 annotations: truecharts.org/catagories: | - custom diff --git a/stable/custom-app/5.1.37/README.md b/stable/custom-app/5.1.38/README.md similarity index 95% rename from stable/custom-app/5.1.37/README.md rename to stable/custom-app/5.1.38/README.md index 00862f33b67..27fa647a78a 100644 --- a/stable/custom-app/5.1.37/README.md +++ b/stable/custom-app/5.1.38/README.md @@ -1,6 +1,6 @@ # custom-app -![Version: 5.1.37](https://img.shields.io/badge/Version-5.1.37-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.20.1736](https://img.shields.io/badge/AppVersion-0.20.1736-informational?style=flat-square) +![Version: 5.1.38](https://img.shields.io/badge/Version-5.1.38-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.20.1740](https://img.shields.io/badge/AppVersion-0.20.1740-informational?style=flat-square) Advanced tool to create your own TrueCharts-based App diff --git a/stable/custom-app/5.1.37/app-readme.md b/stable/custom-app/5.1.38/app-readme.md similarity index 100% rename from stable/custom-app/5.1.37/app-readme.md rename to stable/custom-app/5.1.38/app-readme.md diff --git a/stable/custom-app/5.1.37/charts/common-10.4.12.tgz b/stable/custom-app/5.1.38/charts/common-10.4.12.tgz similarity index 100% rename from stable/custom-app/5.1.37/charts/common-10.4.12.tgz rename to stable/custom-app/5.1.38/charts/common-10.4.12.tgz diff --git a/stable/custom-app/5.1.37/ci/test-values.yaml b/stable/custom-app/5.1.38/ci/test-values.yaml similarity index 88% rename from stable/custom-app/5.1.37/ci/test-values.yaml rename to stable/custom-app/5.1.38/ci/test-values.yaml index 507b999b2d2..37f29d71d40 100644 --- a/stable/custom-app/5.1.37/ci/test-values.yaml +++ b/stable/custom-app/5.1.38/ci/test-values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/jackett pullPolicy: IfNotPresent - tag: 0.20.1736@sha256:ad968e17a24833774d54dd22a924a09dea1e729b86e6fb5832699f18bebeb495 + tag: 0.20.1740@sha256:71df2022e355dbaee62ca7ee023dbb14e17aa1692e6d4ff0dec3a4f770bb3267 securityContext: readOnlyRootFilesystem: false diff --git a/stable/custom-app/5.1.37/ix_values.yaml b/stable/custom-app/5.1.38/ix_values.yaml similarity index 52% rename from stable/custom-app/5.1.37/ix_values.yaml rename to stable/custom-app/5.1.38/ix_values.yaml index dff5384f227..c3a999a078a 100644 --- a/stable/custom-app/5.1.37/ix_values.yaml +++ b/stable/custom-app/5.1.38/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/jackett pullPolicy: IfNotPresent - tag: 0.20.1736@sha256:ad968e17a24833774d54dd22a924a09dea1e729b86e6fb5832699f18bebeb495 + tag: 0.20.1740@sha256:71df2022e355dbaee62ca7ee023dbb14e17aa1692e6d4ff0dec3a4f770bb3267 portal: enabled: true diff --git a/stable/custom-app/5.1.37/questions.yaml b/stable/custom-app/5.1.38/questions.yaml similarity index 100% rename from stable/custom-app/5.1.37/questions.yaml rename to stable/custom-app/5.1.38/questions.yaml diff --git a/stable/custom-app/5.1.37/templates/common.yaml b/stable/custom-app/5.1.38/templates/common.yaml similarity index 100% rename from stable/custom-app/5.1.37/templates/common.yaml rename to stable/custom-app/5.1.38/templates/common.yaml diff --git a/stable/custom-app/5.1.37/values.yaml b/stable/custom-app/5.1.38/values.yaml similarity index 100% rename from stable/custom-app/5.1.37/values.yaml rename to stable/custom-app/5.1.38/values.yaml diff --git a/stable/docker-compose/2.0.31/CHANGELOG.md b/stable/docker-compose/2.0.32/CHANGELOG.md similarity index 91% rename from stable/docker-compose/2.0.31/CHANGELOG.md rename to stable/docker-compose/2.0.32/CHANGELOG.md index 07d9b960fe2..2c3a667cd06 100644 --- a/stable/docker-compose/2.0.31/CHANGELOG.md +++ b/stable/docker-compose/2.0.32/CHANGELOG.md @@ -2,6 +2,15 @@ +## [docker-compose-2.0.32](https://github.com/truecharts/charts/compare/docker-compose-2.0.31...docker-compose-2.0.32) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [docker-compose-2.0.31](https://github.com/truecharts/charts/compare/docker-compose-2.0.30...docker-compose-2.0.31) (2022-08-17) ### Chore @@ -88,12 +97,3 @@ - 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)) - - - - -## [docker-compose-2.0.24](https://github.com/truecharts/apps/compare/docker-compose-2.0.23...docker-compose-2.0.24) (2022-07-23) - -### Chore - -- Auto-update chart README [skip ci] diff --git a/stable/docker-compose/2.0.32/Chart.lock b/stable/docker-compose/2.0.32/Chart.lock new file mode 100644 index 00000000000..f21ed3f4370 --- /dev/null +++ b/stable/docker-compose/2.0.32/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:52:28.007331565Z" diff --git a/stable/docker-compose/2.0.31/Chart.yaml b/stable/docker-compose/2.0.32/Chart.yaml similarity index 98% rename from stable/docker-compose/2.0.31/Chart.yaml rename to stable/docker-compose/2.0.32/Chart.yaml index bb7b2402fc2..b1aabfdd8f3 100644 --- a/stable/docker-compose/2.0.31/Chart.yaml +++ b/stable/docker-compose/2.0.32/Chart.yaml @@ -21,7 +21,7 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/docker-compose - https://hub.docker.com/_/docker type: application -version: 2.0.31 +version: 2.0.32 annotations: truecharts.org/catagories: | - docker diff --git a/stable/docker-compose/2.0.31/README.md b/stable/docker-compose/2.0.32/README.md similarity index 98% rename from stable/docker-compose/2.0.31/README.md rename to stable/docker-compose/2.0.32/README.md index 7d90df2c68d..8cd2c4f8c11 100644 --- a/stable/docker-compose/2.0.31/README.md +++ b/stable/docker-compose/2.0.32/README.md @@ -1,6 +1,6 @@ # docker-compose -![Version: 2.0.31](https://img.shields.io/badge/Version-2.0.31-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 20.10.17](https://img.shields.io/badge/AppVersion-20.10.17-informational?style=flat-square) +![Version: 2.0.32](https://img.shields.io/badge/Version-2.0.32-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 20.10.17](https://img.shields.io/badge/AppVersion-20.10.17-informational?style=flat-square) Dedicated App for using Docker-Compose on TrueNAS SCALE diff --git a/stable/docker-compose/2.0.31/app-readme.md b/stable/docker-compose/2.0.32/app-readme.md similarity index 100% rename from stable/docker-compose/2.0.31/app-readme.md rename to stable/docker-compose/2.0.32/app-readme.md diff --git a/stable/docker-compose/2.0.31/charts/common-10.4.12.tgz b/stable/docker-compose/2.0.32/charts/common-10.4.12.tgz similarity index 100% rename from stable/docker-compose/2.0.31/charts/common-10.4.12.tgz rename to stable/docker-compose/2.0.32/charts/common-10.4.12.tgz diff --git a/stable/docker-compose/2.0.31/ix_values.yaml b/stable/docker-compose/2.0.32/ix_values.yaml similarity index 96% rename from stable/docker-compose/2.0.31/ix_values.yaml rename to stable/docker-compose/2.0.32/ix_values.yaml index 02cbf613803..ff70fa85461 100644 --- a/stable/docker-compose/2.0.31/ix_values.yaml +++ b/stable/docker-compose/2.0.32/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/docker-in-docker pullPolicy: IfNotPresent - tag: v20.10.17@sha256:5bff54347dea26035d13ba1d926e59341c1ecb8ad54ff1300cfd13a47f00dc01 + tag: v20.10.17@sha256:fc5a2d651518fab4a07ea349f9cf0e64a1623333dde3aaf9d66e24cd06b0e1e5 controller: # -- Set the controller type. diff --git a/stable/docker-compose/2.0.31/questions.yaml b/stable/docker-compose/2.0.32/questions.yaml similarity index 100% rename from stable/docker-compose/2.0.31/questions.yaml rename to stable/docker-compose/2.0.32/questions.yaml diff --git a/stable/docker-compose/2.0.31/templates/common.yaml b/stable/docker-compose/2.0.32/templates/common.yaml similarity index 100% rename from stable/docker-compose/2.0.31/templates/common.yaml rename to stable/docker-compose/2.0.32/templates/common.yaml diff --git a/stable/docker-compose/2.0.31/values.yaml b/stable/docker-compose/2.0.32/values.yaml similarity index 100% rename from stable/docker-compose/2.0.31/values.yaml rename to stable/docker-compose/2.0.32/values.yaml diff --git a/stable/drawio/2.0.35/Chart.lock b/stable/drawio/2.0.35/Chart.lock deleted file mode 100644 index 5c5079aae36..00000000000 --- a/stable/drawio/2.0.35/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-14T09:25:19.945321873Z" diff --git a/stable/drawio/2.0.35/CHANGELOG.md b/stable/drawio/2.0.36/CHANGELOG.md similarity index 90% rename from stable/drawio/2.0.35/CHANGELOG.md rename to stable/drawio/2.0.36/CHANGELOG.md index b417cb8cbe8..3bd80d253e7 100644 --- a/stable/drawio/2.0.35/CHANGELOG.md +++ b/stable/drawio/2.0.36/CHANGELOG.md @@ -2,6 +2,15 @@ +## [drawio-2.0.36](https://github.com/truecharts/charts/compare/drawio-2.0.35...drawio-2.0.36) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [drawio-2.0.35](https://github.com/truecharts/charts/compare/drawio-2.0.34...drawio-2.0.35) (2022-08-14) ### Chore @@ -88,12 +97,3 @@ ### Chore -- Auto-update chart README [skip ci] - - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) - - - - -## [drawio-2.0.29](https://github.com/truecharts/apps/compare/drawio-2.0.28...drawio-2.0.29) (2022-07-23) - -### Chore diff --git a/stable/drawio/2.0.36/Chart.lock b/stable/drawio/2.0.36/Chart.lock new file mode 100644 index 00000000000..9b42fb0204a --- /dev/null +++ b/stable/drawio/2.0.36/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:52:37.822299603Z" diff --git a/stable/drawio/2.0.35/Chart.yaml b/stable/drawio/2.0.36/Chart.yaml similarity index 95% rename from stable/drawio/2.0.35/Chart.yaml rename to stable/drawio/2.0.36/Chart.yaml index 1b73a7ad110..3d34f96c399 100644 --- a/stable/drawio/2.0.35/Chart.yaml +++ b/stable/drawio/2.0.36/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: "20.2.3" +appVersion: "20.2.5" dependencies: - name: common repository: https://library-charts.truecharts.org @@ -19,7 +19,7 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/drawio - https://hub.docker.com/r/jgraph/drawio - https://github.com/jgraph/drawio -version: 2.0.35 +version: 2.0.36 annotations: truecharts.org/catagories: | - media diff --git a/stable/drawio/2.0.35/README.md b/stable/drawio/2.0.36/README.md similarity index 94% rename from stable/drawio/2.0.35/README.md rename to stable/drawio/2.0.36/README.md index 9374bab1dcc..bf82089e1e4 100644 --- a/stable/drawio/2.0.35/README.md +++ b/stable/drawio/2.0.36/README.md @@ -1,6 +1,6 @@ # drawio -![Version: 2.0.35](https://img.shields.io/badge/Version-2.0.35-informational?style=flat-square) ![AppVersion: 20.2.3](https://img.shields.io/badge/AppVersion-20.2.3-informational?style=flat-square) +![Version: 2.0.36](https://img.shields.io/badge/Version-2.0.36-informational?style=flat-square) ![AppVersion: 20.2.5](https://img.shields.io/badge/AppVersion-20.2.5-informational?style=flat-square) Drawio is free online diagram software. diff --git a/stable/drawio/2.0.35/app-readme.md b/stable/drawio/2.0.36/app-readme.md similarity index 100% rename from stable/drawio/2.0.35/app-readme.md rename to stable/drawio/2.0.36/app-readme.md diff --git a/stable/drawio/2.0.35/charts/common-10.4.12.tgz b/stable/drawio/2.0.36/charts/common-10.4.12.tgz similarity index 100% rename from stable/drawio/2.0.35/charts/common-10.4.12.tgz rename to stable/drawio/2.0.36/charts/common-10.4.12.tgz diff --git a/stable/drawio/2.0.35/ix_values.yaml b/stable/drawio/2.0.36/ix_values.yaml similarity index 78% rename from stable/drawio/2.0.35/ix_values.yaml rename to stable/drawio/2.0.36/ix_values.yaml index e4c29b41941..d67d400f137 100644 --- a/stable/drawio/2.0.35/ix_values.yaml +++ b/stable/drawio/2.0.36/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/drawio - tag: 20.2.3@sha256:041ad8eef996522e86654abdf9237be7f07287e76ae6b028349c23d93d0d49bc + tag: 20.2.5@sha256:41e23ba8a13564344a6946bf42139728dd5d83f1874209726b254971d8fbc41c pullPolicy: IfNotPresent securityContext: diff --git a/stable/drawio/2.0.35/questions.yaml b/stable/drawio/2.0.36/questions.yaml similarity index 100% rename from stable/drawio/2.0.35/questions.yaml rename to stable/drawio/2.0.36/questions.yaml diff --git a/stable/drawio/2.0.35/templates/common.yaml b/stable/drawio/2.0.36/templates/common.yaml similarity index 100% rename from stable/drawio/2.0.35/templates/common.yaml rename to stable/drawio/2.0.36/templates/common.yaml diff --git a/stable/drawio/2.0.35/values.yaml b/stable/drawio/2.0.36/values.yaml similarity index 100% rename from stable/drawio/2.0.35/values.yaml rename to stable/drawio/2.0.36/values.yaml diff --git a/stable/filezilla/4.0.29/Chart.lock b/stable/filezilla/4.0.29/Chart.lock deleted file mode 100644 index 82b26ba872f..00000000000 --- a/stable/filezilla/4.0.29/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-12T22:10:50.033314922Z" diff --git a/stable/filezilla/4.0.29/CHANGELOG.md b/stable/filezilla/4.0.30/CHANGELOG.md similarity index 90% rename from stable/filezilla/4.0.29/CHANGELOG.md rename to stable/filezilla/4.0.30/CHANGELOG.md index 0d15c84de18..9025a0bb287 100644 --- a/stable/filezilla/4.0.29/CHANGELOG.md +++ b/stable/filezilla/4.0.30/CHANGELOG.md @@ -2,6 +2,15 @@ +## [filezilla-4.0.30](https://github.com/truecharts/charts/compare/filezilla-4.0.29...filezilla-4.0.30) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [filezilla-4.0.29](https://github.com/truecharts/charts/compare/filezilla-4.0.28...filezilla-4.0.29) (2022-08-12) ### Chore @@ -88,12 +97,3 @@ ### Chore -- Auto-update chart README [skip ci] - - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) - - - - -## [filezilla-4.0.23](https://github.com/truecharts/apps/compare/filezilla-4.0.22...filezilla-4.0.23) (2022-07-23) - -### Chore diff --git a/stable/filezilla/4.0.30/Chart.lock b/stable/filezilla/4.0.30/Chart.lock new file mode 100644 index 00000000000..54889ffcd39 --- /dev/null +++ b/stable/filezilla/4.0.30/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:52:44.178001643Z" diff --git a/stable/filezilla/4.0.29/Chart.yaml b/stable/filezilla/4.0.30/Chart.yaml similarity index 98% rename from stable/filezilla/4.0.29/Chart.yaml rename to stable/filezilla/4.0.30/Chart.yaml index 7448889d486..9e600c2836a 100644 --- a/stable/filezilla/4.0.29/Chart.yaml +++ b/stable/filezilla/4.0.30/Chart.yaml @@ -24,7 +24,7 @@ sources: - https://filezilla-project.org/ - https://github.com/linuxserver/docker-filezilla type: application -version: 4.0.29 +version: 4.0.30 annotations: truecharts.org/catagories: | - media diff --git a/stable/filezilla/4.0.29/README.md b/stable/filezilla/4.0.30/README.md similarity index 98% rename from stable/filezilla/4.0.29/README.md rename to stable/filezilla/4.0.30/README.md index e31db3aa940..1064885c6cb 100644 --- a/stable/filezilla/4.0.29/README.md +++ b/stable/filezilla/4.0.30/README.md @@ -1,6 +1,6 @@ # filezilla -![Version: 4.0.29](https://img.shields.io/badge/Version-4.0.29-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.55.1](https://img.shields.io/badge/AppVersion-3.55.1-informational?style=flat-square) +![Version: 4.0.30](https://img.shields.io/badge/Version-4.0.30-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.55.1](https://img.shields.io/badge/AppVersion-3.55.1-informational?style=flat-square) A Helm chart for Kubernetes diff --git a/stable/filezilla/4.0.29/app-readme.md b/stable/filezilla/4.0.30/app-readme.md similarity index 100% rename from stable/filezilla/4.0.29/app-readme.md rename to stable/filezilla/4.0.30/app-readme.md diff --git a/stable/filezilla/4.0.29/charts/common-10.4.12.tgz b/stable/filezilla/4.0.30/charts/common-10.4.12.tgz similarity index 100% rename from stable/filezilla/4.0.29/charts/common-10.4.12.tgz rename to stable/filezilla/4.0.30/charts/common-10.4.12.tgz diff --git a/stable/filezilla/4.0.29/ix_values.yaml b/stable/filezilla/4.0.30/ix_values.yaml similarity index 82% rename from stable/filezilla/4.0.29/ix_values.yaml rename to stable/filezilla/4.0.30/ix_values.yaml index 3fd3fda27db..cb69ddeb428 100644 --- a/stable/filezilla/4.0.29/ix_values.yaml +++ b/stable/filezilla/4.0.30/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/filezilla pullPolicy: IfNotPresent - tag: v3.55.1@sha256:4bf9d0ada1c6b6052d1deabcc47f4b278ea24119fa524a7bb41db07eacf4705a + tag: v3.55.1@sha256:7a89eedb44f70448b8e4d8b9ce9e49ec5bfe4c6a8fe93b4968bb629f0a30d99a securityContext: readOnlyRootFilesystem: false diff --git a/stable/filezilla/4.0.29/questions.yaml b/stable/filezilla/4.0.30/questions.yaml similarity index 100% rename from stable/filezilla/4.0.29/questions.yaml rename to stable/filezilla/4.0.30/questions.yaml diff --git a/stable/filezilla/4.0.29/templates/common.yaml b/stable/filezilla/4.0.30/templates/common.yaml similarity index 100% rename from stable/filezilla/4.0.29/templates/common.yaml rename to stable/filezilla/4.0.30/templates/common.yaml diff --git a/stable/filezilla/4.0.29/values.yaml b/stable/filezilla/4.0.30/values.yaml similarity index 100% rename from stable/filezilla/4.0.29/values.yaml rename to stable/filezilla/4.0.30/values.yaml diff --git a/stable/grocy/11.0.35/CHANGELOG.md b/stable/grocy/11.0.35/CHANGELOG.md new file mode 100644 index 00000000000..49b1511d803 --- /dev/null +++ b/stable/grocy/11.0.35/CHANGELOG.md @@ -0,0 +1,99 @@ +# Changelog + + + +## [grocy-11.0.35](https://github.com/truecharts/charts/compare/grocy-11.0.34...grocy-11.0.35) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + +## [grocy-11.0.34](https://github.com/truecharts/charts/compare/grocy-11.0.33...grocy-11.0.34) (2022-08-14) + +### Chore + +- update docker general non-major docker tags ([#3465](https://github.com/truecharts/charts/issues/3465)) + + + + +## [grocy-11.0.33](https://github.com/truecharts/charts/compare/grocy-11.0.32...grocy-11.0.33) (2022-08-12) + +### Chore + +- add documentation checkbox/section to all SCALE Apps + - update helm general non-major helm releases ([#3456](https://github.com/truecharts/charts/issues/3456)) + + ### Fix + +- move extraArgs from .Values.controller to .Values ([#3447](https://github.com/truecharts/charts/issues/3447)) + + + + +## [grocy-11.0.32](https://github.com/truecharts/charts/compare/grocy-11.0.31...grocy-11.0.32) (2022-08-09) + +### Chore + +- update docker general non-major ([#3377](https://github.com/truecharts/charts/issues/3377)) + + + + +## [grocy-11.0.31](https://github.com/truecharts/charts/compare/grocy-11.0.30...grocy-11.0.31) (2022-08-08) + +### Chore + +- update helm general non-major helm releases ([#3376](https://github.com/truecharts/charts/issues/3376)) + - replace questions parts with templates ([#3402](https://github.com/truecharts/charts/issues/3402)) + + + + +## [grocy-11.0.30](https://github.com/truecharts/apps/compare/grocy-11.0.29...grocy-11.0.30) (2022-07-28) + +### Chore + +- update docker general non-major ([#3326](https://github.com/truecharts/apps/issues/3326)) + + + + +## [grocy-11.0.29](https://github.com/truecharts/apps/compare/grocy-11.0.28...grocy-11.0.29) (2022-07-26) + +### Chore + +- update home links ([#3291](https://github.com/truecharts/apps/issues/3291)) + - update helm general non-major helm releases ([#3302](https://github.com/truecharts/apps/issues/3302)) + + + + +## [grocy-11.0.28](https://github.com/truecharts/apps/compare/grocy-11.0.27...grocy-11.0.28) (2022-07-25) + +### Chore + +- Auto-update chart README [skip ci] + - update docker general non-major ([#3295](https://github.com/truecharts/apps/issues/3295)) + + + + +## [grocy-11.0.28](https://github.com/truecharts/apps/compare/grocy-11.0.27...grocy-11.0.28) (2022-07-25) + +### Chore + +- update docker general non-major ([#3295](https://github.com/truecharts/apps/issues/3295)) + + + + +## [grocy-11.0.27](https://github.com/truecharts/apps/compare/grocy-11.0.26...grocy-11.0.27) (2022-07-23) + +### Chore + +- Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] diff --git a/stable/grocy/11.0.35/Chart.lock b/stable/grocy/11.0.35/Chart.lock new file mode 100644 index 00000000000..8fa9aa6a712 --- /dev/null +++ b/stable/grocy/11.0.35/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:52:48.931895963Z" diff --git a/stable/grocy/11.0.35/Chart.yaml b/stable/grocy/11.0.35/Chart.yaml new file mode 100644 index 00000000000..8db6f149130 --- /dev/null +++ b/stable/grocy/11.0.35/Chart.yaml @@ -0,0 +1,28 @@ +apiVersion: v2 +appVersion: "3.3.1" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +deprecated: false +description: ERP beyond your fridge - grocy is a web-based self-hosted groceries & household management solution for your home +home: https://truecharts.org/docs/charts/stable/grocy +icon: https://truecharts.org/img/hotlink-ok/chart-icons/grocy.png +keywords: + - grocy +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: grocy +sources: + - https://github.com/truecharts/charts/tree/master/charts/stable/grocy + - https://github.com/grocy/grocy +type: application +version: 11.0.35 +annotations: + truecharts.org/catagories: | + - Home-Automation + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/stable/grocy/11.0.35/README.md b/stable/grocy/11.0.35/README.md new file mode 100644 index 00000000000..dd3af48e6f7 --- /dev/null +++ b/stable/grocy/11.0.35/README.md @@ -0,0 +1,108 @@ +# grocy + +![Version: 11.0.35](https://img.shields.io/badge/Version-11.0.35-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.3.1](https://img.shields.io/badge/AppVersion-3.3.1-informational?style=flat-square) + +ERP beyond your fridge - grocy is a web-based self-hosted groceries & household management solution for your home + +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: [grocy](https://truecharts.org/docs/charts/stable/grocy) + +**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.12 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this Chart on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Installing-an-App). + +### Helm + +To install the chart with the release name `grocy` + +```console +helm repo add TrueCharts https://charts.truecharts.org +helm repo update +helm install grocy TrueCharts/grocy +``` + +## Uninstall + +### TrueNAS SCALE + +**Upgrading, Rolling Back and Uninstalling the Chart** + +To upgrade, rollback or delete this Chart from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Upgrade-rollback-delete-an-App). + +### Helm + +To uninstall the `grocy` deployment + +```console +helm uninstall grocy +``` + +## 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 command line + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install grocy \ + --set env.TZ="America/New York" \ + TrueCharts/grocy +``` + +#### 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 grocy TrueCharts/grocy -f values.yaml +``` + +#### Connecting to other charts + +If you need to connect this Chart to other Charts on TrueNAS SCALE, please refer to our [Linking Charts Internally](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/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/grocy/11.0.35/app-readme.md b/stable/grocy/11.0.35/app-readme.md new file mode 100644 index 00000000000..fde13924737 --- /dev/null +++ b/stable/grocy/11.0.35/app-readme.md @@ -0,0 +1,8 @@ +ERP beyond your fridge - grocy is a web-based self-hosted groceries & household management solution for your home + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/docs/charts/stable/grocy](https://truecharts.org/docs/charts/stable/grocy) + +--- + +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/jdownloader2/8.0.27/charts/common-10.4.12.tgz b/stable/grocy/11.0.35/charts/common-10.4.12.tgz similarity index 100% rename from stable/jdownloader2/8.0.27/charts/common-10.4.12.tgz rename to stable/grocy/11.0.35/charts/common-10.4.12.tgz diff --git a/stable/grocy/11.0.35/ix_values.yaml b/stable/grocy/11.0.35/ix_values.yaml new file mode 100644 index 00000000000..97169e5a807 --- /dev/null +++ b/stable/grocy/11.0.35/ix_values.yaml @@ -0,0 +1,27 @@ +image: + repository: tccr.io/truecharts/grocy + tag: v3.3.1@sha256:f91e0ba5259499044969434f5dd07e119554953da6e8fd311965dd78754d11b5 + pullPolicy: IfNotPresent + +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false + +podSecurityContext: + runAsUser: 0 + runAsGroup: 0 + +service: + main: + ports: + main: + port: 10013 + targetPort: 80 + +persistence: + config: + enabled: true + mountPath: "/config" + +portal: + enabled: true diff --git a/stable/grocy/11.0.35/questions.yaml b/stable/grocy/11.0.35/questions.yaml new file mode 100644 index 00000000000..7cdb8ab224d --- /dev/null +++ b/stable/grocy/11.0.35/questions.yaml @@ -0,0 +1,2426 @@ +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 + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - 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 + required: true + enum: + - value: deployment + description: Deployment + - value: statefulset + description: Statefulset + - value: daemonset + description: Daemonset + default: deployment + - variable: replicas + description: Number of desired pod replicas + label: Desired Replicas + schema: + type: int + required: true + default: 1 + - variable: strategy + description: Please specify type of workload to deploy + label: (Advanced) Update Strategy + schema: + type: string + 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" + default: Recreate + - variable: expert + label: Show Expert Configuration Options + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - 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: customextraargs + group: Controller + label: "Extra Args" + description: "Do not click this unless you know what you are doing" + 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: 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 Configuration + 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: 10013 + required: true + - variable: advanced + label: Show Advanced Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: Enable the Port + schema: + type: boolean + hidden: true + default: true + - 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: Name Servers + schema: + default: [] + type: list + items: + - variable: nameserver + label: Name Server + 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: Host Path (simple) + - value: emptyDir + description: emptyDir + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - 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: false + - variable: setPermissions + label: Automatic Permissions + description: Automatically set permissions on install + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPathSimple + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: Host Path + 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: Host Path (Simple) + - value: emptyDir + description: emptyDir + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - 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: Read Only + schema: + type: boolean + default: false + - variable: hostPathSimple + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: Mount Path + 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) Host Path 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: Path Type + 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: Path Type + 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 the 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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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: IP Block +# 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: Namespace Selector +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: Match Expressions +# 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: Match Expressions +# 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: End 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: IP Block +# 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: Namespace Selector +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: Match Expressions +# 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: Match Expressions +# 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: End 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 (Optional) + 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 IPv6 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: Deploy Key + schema: + type: string + - variable: deployKeyBase64 + description: Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence + label: Deploy Key Base64 + 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 Command 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 + - variable: docs + group: Documentation + label: 'Please read the documentation at https://truecharts.org' + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDocs + label: 'I have checked the documentation' + schema: + type: boolean + default: true +# - variable: donate +# group: Documentation +# label: 'Please consider supporting TrueCharts, see: https://truecharts.org/docs/about/sponsor' +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: confirmDonate +# label: 'I have considered supporting the project' +# schema: +# type: boolean +# default: true diff --git a/stable/jdownloader2/8.0.27/templates/common.yaml b/stable/grocy/11.0.35/templates/common.yaml similarity index 100% rename from stable/jdownloader2/8.0.27/templates/common.yaml rename to stable/grocy/11.0.35/templates/common.yaml diff --git a/stable/jdownloader2/8.0.27/values.yaml b/stable/grocy/11.0.35/values.yaml similarity index 100% rename from stable/jdownloader2/8.0.27/values.yaml rename to stable/grocy/11.0.35/values.yaml diff --git a/stable/home-assistant/15.0.42/CHANGELOG.md b/stable/home-assistant/15.0.42/CHANGELOG.md new file mode 100644 index 00000000000..a1072b8d7ff --- /dev/null +++ b/stable/home-assistant/15.0.42/CHANGELOG.md @@ -0,0 +1,99 @@ +# Changelog + + + +## [home-assistant-15.0.42](https://github.com/truecharts/charts/compare/home-assistant-15.0.41...home-assistant-15.0.42) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + +## [home-assistant-15.0.41](https://github.com/truecharts/charts/compare/home-assistant-15.0.40...home-assistant-15.0.41) (2022-08-17) + +### Chore + +- update helm general non-major helm releases ([#3484](https://github.com/truecharts/charts/issues/3484)) + - update docker general non-major ([#3478](https://github.com/truecharts/charts/issues/3478)) + + + + +## [home-assistant-15.0.40](https://github.com/truecharts/charts/compare/home-assistant-15.0.39...home-assistant-15.0.40) (2022-08-14) + +### Chore + +- update docker general non-major docker tags ([#3465](https://github.com/truecharts/charts/issues/3465)) + + + + +## [home-assistant-15.0.39](https://github.com/truecharts/charts/compare/home-assistant-15.0.38...home-assistant-15.0.39) (2022-08-12) + +### Chore + +- add documentation checkbox/section to all SCALE Apps + - update helm general non-major helm releases ([#3456](https://github.com/truecharts/charts/issues/3456)) + + ### Fix + +- move extraArgs from .Values.controller to .Values ([#3447](https://github.com/truecharts/charts/issues/3447)) + + + + +## [home-assistant-15.0.38](https://github.com/truecharts/charts/compare/home-assistant-15.0.37...home-assistant-15.0.38) (2022-08-10) + +### Chore + +- update docker general non-major ([#3421](https://github.com/truecharts/charts/issues/3421)) + + + + +## [home-assistant-15.0.37](https://github.com/truecharts/charts/compare/home-assistant-15.0.36...home-assistant-15.0.37) (2022-08-09) + +### Chore + +- update helm general non-major helm releases to v10.4.9 ([#3413](https://github.com/truecharts/charts/issues/3413)) + + + + +## [home-assistant-15.0.36](https://github.com/truecharts/charts/compare/home-assistant-15.0.35...home-assistant-15.0.36) (2022-08-08) + +### Chore + +- update helm general non-major helm releases ([#3376](https://github.com/truecharts/charts/issues/3376)) + - replace questions parts with templates ([#3402](https://github.com/truecharts/charts/issues/3402)) + + + + +## [home-assistant-15.0.35](https://github.com/truecharts/apps/compare/home-assistant-15.0.34...home-assistant-15.0.35) (2022-07-27) + +### Chore + +- update docker general non-major ([#3313](https://github.com/truecharts/apps/issues/3313)) + + + + +## [home-assistant-15.0.34](https://github.com/truecharts/apps/compare/home-assistant-15.0.33...home-assistant-15.0.34) (2022-07-26) + +### Chore + +- update home links ([#3291](https://github.com/truecharts/apps/issues/3291)) + - update helm general non-major helm releases ([#3302](https://github.com/truecharts/apps/issues/3302)) + + + + +## [home-assistant-15.0.33](https://github.com/truecharts/apps/compare/home-assistant-15.0.32...home-assistant-15.0.33) (2022-07-25) + +### Chore + +- Auto-update chart README [skip ci] + - update docker general non-major ([#3295](https://github.com/truecharts/apps/issues/3295)) diff --git a/stable/home-assistant/15.0.42/Chart.lock b/stable/home-assistant/15.0.42/Chart.lock new file mode 100644 index 00000000000..424027315ef --- /dev/null +++ b/stable/home-assistant/15.0.42/Chart.lock @@ -0,0 +1,9 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +- name: postgresql + repository: https://charts.truecharts.org/ + version: 8.0.56 +digest: sha256:097eb1bdd62beead090a77b403231f4722578ef6f4e8cd6238749d5657208181 +generated: "2022-08-19T05:52:57.612840309Z" diff --git a/stable/home-assistant/15.0.42/Chart.yaml b/stable/home-assistant/15.0.42/Chart.yaml new file mode 100644 index 00000000000..90ccc130fbb --- /dev/null +++ b/stable/home-assistant/15.0.42/Chart.yaml @@ -0,0 +1,35 @@ +apiVersion: v2 +appVersion: "2022.8.6" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 + - condition: postgresql.enabled + name: postgresql + repository: https://charts.truecharts.org/ + version: 8.0.56 +deprecated: false +description: home-assistant App for TrueNAS SCALE +home: https://truecharts.org/docs/charts/stable/home-assistant +icon: https://truecharts.org/img/hotlink-ok/chart-icons/home-assistant.png +keywords: + - home-assistant + - hass + - homeassistant +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: home-assistant +sources: + - https://github.com/truecharts/charts/tree/master/charts/stable/home-assistant + - https://github.com/home-assistant/home-assistant + - https://github.com/cdr/code-server +type: application +version: 15.0.42 +annotations: + truecharts.org/catagories: | + - home-automation + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/stable/home-assistant/15.0.42/README.md b/stable/home-assistant/15.0.42/README.md new file mode 100644 index 00000000000..d057d87e662 --- /dev/null +++ b/stable/home-assistant/15.0.42/README.md @@ -0,0 +1,110 @@ +# home-assistant + +![Version: 15.0.42](https://img.shields.io/badge/Version-15.0.42-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2022.8.6](https://img.shields.io/badge/AppVersion-2022.8.6-informational?style=flat-square) + +home-assistant App for TrueNAS SCALE + +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: [home-assistant](https://truecharts.org/docs/charts/stable/home-assistant) + +**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/ | postgresql | 8.0.56 | +| https://library-charts.truecharts.org | common | 10.4.12 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this Chart on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Installing-an-App). + +### Helm + +To install the chart with the release name `home-assistant` + +```console +helm repo add TrueCharts https://charts.truecharts.org +helm repo update +helm install home-assistant TrueCharts/home-assistant +``` + +## Uninstall + +### TrueNAS SCALE + +**Upgrading, Rolling Back and Uninstalling the Chart** + +To upgrade, rollback or delete this Chart from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Upgrade-rollback-delete-an-App). + +### Helm + +To uninstall the `home-assistant` deployment + +```console +helm uninstall home-assistant +``` + +## 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 command line + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install home-assistant \ + --set env.TZ="America/New York" \ + TrueCharts/home-assistant +``` + +#### 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 home-assistant TrueCharts/home-assistant -f values.yaml +``` + +#### Connecting to other charts + +If you need to connect this Chart to other Charts on TrueNAS SCALE, please refer to our [Linking Charts Internally](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/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/home-assistant/15.0.42/app-readme.md b/stable/home-assistant/15.0.42/app-readme.md new file mode 100644 index 00000000000..23f99744793 --- /dev/null +++ b/stable/home-assistant/15.0.42/app-readme.md @@ -0,0 +1,8 @@ +home-assistant App for TrueNAS SCALE + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/docs/charts/stable/home-assistant](https://truecharts.org/docs/charts/stable/home-assistant) + +--- + +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/kavita/2.0.27/charts/common-10.4.12.tgz b/stable/home-assistant/15.0.42/charts/common-10.4.12.tgz similarity index 100% rename from stable/kavita/2.0.27/charts/common-10.4.12.tgz rename to stable/home-assistant/15.0.42/charts/common-10.4.12.tgz diff --git a/stable/vikunja/3.0.40/charts/postgresql-8.0.56.tgz b/stable/home-assistant/15.0.42/charts/postgresql-8.0.56.tgz similarity index 100% rename from stable/vikunja/3.0.40/charts/postgresql-8.0.56.tgz rename to stable/home-assistant/15.0.42/charts/postgresql-8.0.56.tgz diff --git a/stable/home-assistant/15.0.42/ix_values.yaml b/stable/home-assistant/15.0.42/ix_values.yaml new file mode 100644 index 00000000000..5164d8ba284 --- /dev/null +++ b/stable/home-assistant/15.0.42/ix_values.yaml @@ -0,0 +1,160 @@ +image: + repository: tccr.io/truecharts/home-assistant + pullPolicy: IfNotPresent + tag: 2022.8.6@sha256:dfbbcea39885c7b3a282b61de71bb7b04a79f3502997cf82b69ad654404eb288 + +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false + +podSecurityContext: + runAsUser: 0 + runAsGroup: 0 + +service: + main: + ports: + main: + port: 8123 + targetPort: 8123 + +initContainers: + init: + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + command: ["/config/init/init.sh"] + volumeMounts: + - name: init + mountPath: "/config/init" + - name: config + mountPath: "/config" + +# # Enable devices to be discoverable +# hostNetwork: true + +# # When hostNetwork is true set dnsPolicy to ClusterFirstWithHostNet +# dnsPolicy: ClusterFirstWithHostNet + +# Enable a prometheus-operator servicemonitor +prometheus: + serviceMonitor: + enabled: false + # interval: 1m + # additionalLabels: {} + +persistence: + config: + enabled: true + mountPath: "/config" + init: + enabled: "true" + mountPath: "/config/init" + readOnly: true + type: "custom" + volumeSpec: + configMap: + name: '{{ include "tc.common.names.fullname" . }}-init' + defaultMode: 0777 + +configmap: + init: + enabled: true + data: + init.sh: |- + #!/bin/sh + if test -f "/config/configuration.yaml"; then + echo "configuration.yaml exists." + if grep -q recorder: "/config/configuration.yaml"; then + echo "configuration.yaml already contains recorder" + else + cat /config/init/recorder.default >> /config/configuration.yaml + fi + if grep -q http: "/config/configuration.yaml"; then + echo "configuration.yaml already contains http section" + else + cat /config/init/http.default >> /config/configuration.yaml + fi + else + echo "configuration.yaml does NOT exist." + cp /config/init/configuration.yaml.default /config/configuration.yaml + cat /config/init/recorder.default >> /config/configuration.yaml + cat /config/init/http.default >> /config/configuration.yaml + fi + + echo "Creating include files..." + for include_file in groups.yaml automations.yaml scripts.yaml scenes.yaml; do + if test -f "/config/$include_file"; then + echo "$include_file exists." + else + echo "$include_file does NOT exist." + touch "/config/$include_file" + fi + done + + cd "/config" || echo "Could not change path to /config" + echo "Creating custom_components directory..." + mkdir "/config/custom_components" || echo "custom_components directory already exists" + + echo "Changing to the custom_components directory..." + cd "/config/custom_components" || echo "Could not change path to /config/custom_components" + + echo "Downloading HACS" + wget "https://github.com/hacs/integration/releases/latest/download/hacs.zip" || exit 0 + + if [ -d "/config/custom_components/hacs" ]; then + echo "HACS directory already exist, cleaning up..." + rm -R "/config/custom_components/hacs" + fi + + echo "Creating HACS directory..." + mkdir "/config/custom_components/hacs" + + echo "Unpacking HACS..." + unzip "/config/custom_components/hacs.zip" -d "/config/custom_components/hacs" >/dev/null 2>&1 + + echo "Removing HACS zip file..." + rm "/config/custom_components/hacs.zip" + echo "Installation complete." + + configuration.yaml.default: |- + # Configure a default setup of Home Assistant (frontend, api, etc) + default_config: + + # Text to speech + tts: + - platform: google_translate + + group: !include groups.yaml + automation: !include automations.yaml + script: !include scripts.yaml + scene: !include scenes.yaml + recorder.default: |- + + recorder: + purge_keep_days: 30 + commit_interval: 3 + db_url: {{ ( printf "%s?client_encoding=utf8" ( .Values.postgresql.url.complete | trimAll "\"" ) ) | quote }} + http.default: |- + + http: + use_x_forwarded_for: true + trusted_proxies: + - 172.16.0.0/16 + +postgresql: + enabled: true + postgresqlUsername: home-assistant + postgresqlDatabase: home-assistant + existingSecret: "dbcreds" + +influxdb: + enabled: false + architecture: standalone + database: home_assistant + authEnabled: false + persistence: + enabled: false + # storageClass: "" + # + +portal: + enabled: true diff --git a/stable/home-assistant/15.0.42/questions.yaml b/stable/home-assistant/15.0.42/questions.yaml new file mode 100644 index 00000000000..6c88486c1de --- /dev/null +++ b/stable/home-assistant/15.0.42/questions.yaml @@ -0,0 +1,2426 @@ +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 + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - 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 + required: true + enum: + - value: deployment + description: Deployment + - value: statefulset + description: Statefulset + - value: daemonset + description: Daemonset + default: deployment + - variable: replicas + description: Number of desired pod replicas + label: Desired Replicas + schema: + type: int + required: true + default: 1 + - variable: strategy + description: Please specify type of workload to deploy + label: (Advanced) Update Strategy + schema: + type: string + 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" + default: Recreate + - variable: expert + label: Show Expert Configuration Options + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - 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: customextraargs + group: Controller + label: "Extra Args" + description: "Do not click this unless you know what you are doing" + 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: 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 Configuration + 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: 8123 + required: true + - variable: advanced + label: Show Advanced Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: Enable the Port + schema: + type: boolean + hidden: true + default: true + - 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: 8123 + - 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: Name Servers + schema: + default: [] + type: list + items: + - variable: nameserver + label: Name Server + 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: Host Path (simple) + - value: emptyDir + description: emptyDir + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - 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: false + - variable: setPermissions + label: Automatic Permissions + description: Automatically set permissions on install + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPathSimple + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: Host Path + 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: Host Path (Simple) + - value: emptyDir + description: emptyDir + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - 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: Read Only + schema: + type: boolean + default: false + - variable: hostPathSimple + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: Mount Path + 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) Host Path 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: Path Type + 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: Path Type + 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 the 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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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: IP Block +# 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: Namespace Selector +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: Match Expressions +# 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: Match Expressions +# 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: End 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: IP Block +# 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: Namespace Selector +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: Match Expressions +# 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: Match Expressions +# 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: End 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 (Optional) + 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 IPv6 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: Deploy Key + schema: + type: string + - variable: deployKeyBase64 + description: Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence + label: Deploy Key Base64 + 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 Command 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 + - variable: docs + group: Documentation + label: 'Please read the documentation at https://truecharts.org' + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDocs + label: 'I have checked the documentation' + schema: + type: boolean + default: true +# - variable: donate +# group: Documentation +# label: 'Please consider supporting TrueCharts, see: https://truecharts.org/docs/about/sponsor' +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: confirmDonate +# label: 'I have considered supporting the project' +# schema: +# type: boolean +# default: true diff --git a/stable/home-assistant/15.0.42/templates/common.yaml b/stable/home-assistant/15.0.42/templates/common.yaml new file mode 100644 index 00000000000..b9e7208f382 --- /dev/null +++ b/stable/home-assistant/15.0.42/templates/common.yaml @@ -0,0 +1,5 @@ +{{/* Make sure all variables are set properly */}} +{{- include "tc.common.loader.init" . }} + +{{/* Render the templates */}} +{{ include "tc.common.loader.apply" . }} diff --git a/stable/kavita/2.0.27/values.yaml b/stable/home-assistant/15.0.42/values.yaml similarity index 100% rename from stable/kavita/2.0.27/values.yaml rename to stable/home-assistant/15.0.42/values.yaml diff --git a/stable/jackett/11.0.61/CHANGELOG.md b/stable/jackett/11.0.61/CHANGELOG.md new file mode 100644 index 00000000000..cc33f4cd17d --- /dev/null +++ b/stable/jackett/11.0.61/CHANGELOG.md @@ -0,0 +1,99 @@ +# Changelog + + + +## [jackett-11.0.61](https://github.com/truecharts/charts/compare/jackett-11.0.60...jackett-11.0.61) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + +## [jackett-11.0.60](https://github.com/truecharts/charts/compare/jackett-11.0.59...jackett-11.0.60) (2022-08-18) + +### Chore + +- update docker general non-major ([#3503](https://github.com/truecharts/charts/issues/3503)) + + + + +## [jackett-11.0.59](https://github.com/truecharts/charts/compare/jackett-11.0.58...jackett-11.0.59) (2022-08-17) + +### Chore + +- update docker general non-major ([#3478](https://github.com/truecharts/charts/issues/3478)) + + + + +## [jackett-11.0.58](https://github.com/truecharts/charts/compare/jackett-11.0.57...jackett-11.0.58) (2022-08-14) + +### Chore + +- update docker general non-major docker tags ([#3465](https://github.com/truecharts/charts/issues/3465)) + + + + +## [jackett-11.0.57](https://github.com/truecharts/charts/compare/jackett-11.0.56...jackett-11.0.57) (2022-08-12) + +### Chore + +- update helm general non-major helm releases ([#3456](https://github.com/truecharts/charts/issues/3456)) + + + + +## [jackett-11.0.56](https://github.com/truecharts/charts/compare/jackett-11.0.55...jackett-11.0.56) (2022-08-12) + +### Chore + +- add documentation checkbox/section to all SCALE Apps + - update docker general non-major ([#3453](https://github.com/truecharts/charts/issues/3453)) + + ### Fix + +- move extraArgs from .Values.controller to .Values ([#3447](https://github.com/truecharts/charts/issues/3447)) + + + + +## [jackett-11.0.55](https://github.com/truecharts/charts/compare/jackett-11.0.54...jackett-11.0.55) (2022-08-09) + +### Chore + +- update docker general non-major ([#3377](https://github.com/truecharts/charts/issues/3377)) + + + + +## [jackett-11.0.54](https://github.com/truecharts/charts/compare/jackett-11.0.52...jackett-11.0.54) (2022-08-08) + +### Chore + +- update helm general non-major helm releases ([#3376](https://github.com/truecharts/charts/issues/3376)) + - update docker general non-major ([#3356](https://github.com/truecharts/charts/issues/3356)) + - replace questions parts with templates ([#3402](https://github.com/truecharts/charts/issues/3402)) + + + + +## [jackett-11.0.52](https://github.com/truecharts/apps/compare/jackett-11.0.51...jackett-11.0.52) (2022-07-29) + +### Chore + +- update docker general non-major ([#3339](https://github.com/truecharts/apps/issues/3339)) + + + + +## [jackett-11.0.51](https://github.com/truecharts/apps/compare/jackett-11.0.50...jackett-11.0.51) (2022-07-28) + +### Chore + +- update docker general non-major ([#3326](https://github.com/truecharts/apps/issues/3326)) + + diff --git a/stable/jackett/11.0.61/Chart.lock b/stable/jackett/11.0.61/Chart.lock new file mode 100644 index 00000000000..1ec7a65aee2 --- /dev/null +++ b/stable/jackett/11.0.61/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:52:58.783688689Z" diff --git a/stable/jackett/11.0.61/Chart.yaml b/stable/jackett/11.0.61/Chart.yaml new file mode 100644 index 00000000000..7bbe7387948 --- /dev/null +++ b/stable/jackett/11.0.61/Chart.yaml @@ -0,0 +1,31 @@ +apiVersion: v2 +appVersion: "0.20.1740" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +deprecated: false +description: API Support for your favorite torrent trackers. +home: https://truecharts.org/docs/charts/stable/jackett +icon: https://truecharts.org/img/hotlink-ok/chart-icons/jackett.png +keywords: + - jackett + - torrent + - usenet +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: jackett +sources: + - https://github.com/truecharts/charts/tree/master/charts/stable/jackett + - https://github.com/Jackett/Jackett +type: application +version: 11.0.61 +annotations: + truecharts.org/catagories: | + - media + - test + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/stable/jackett/11.0.61/README.md b/stable/jackett/11.0.61/README.md new file mode 100644 index 00000000000..0e184321904 --- /dev/null +++ b/stable/jackett/11.0.61/README.md @@ -0,0 +1,108 @@ +# jackett + +![Version: 11.0.61](https://img.shields.io/badge/Version-11.0.61-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.20.1740](https://img.shields.io/badge/AppVersion-0.20.1740-informational?style=flat-square) + +API Support for your favorite torrent trackers. + +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: [jackett](https://truecharts.org/docs/charts/stable/jackett) + +**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.12 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this Chart on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Installing-an-App). + +### Helm + +To install the chart with the release name `jackett` + +```console +helm repo add TrueCharts https://charts.truecharts.org +helm repo update +helm install jackett TrueCharts/jackett +``` + +## Uninstall + +### TrueNAS SCALE + +**Upgrading, Rolling Back and Uninstalling the Chart** + +To upgrade, rollback or delete this Chart from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Upgrade-rollback-delete-an-App). + +### Helm + +To uninstall the `jackett` deployment + +```console +helm uninstall jackett +``` + +## 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 command line + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install jackett \ + --set env.TZ="America/New York" \ + TrueCharts/jackett +``` + +#### 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 jackett TrueCharts/jackett -f values.yaml +``` + +#### Connecting to other charts + +If you need to connect this Chart to other Charts on TrueNAS SCALE, please refer to our [Linking Charts Internally](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/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/jackett/11.0.61/app-readme.md b/stable/jackett/11.0.61/app-readme.md new file mode 100644 index 00000000000..94165e2dadb --- /dev/null +++ b/stable/jackett/11.0.61/app-readme.md @@ -0,0 +1,8 @@ +API Support for your favorite torrent trackers. + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/docs/charts/stable/jackett](https://truecharts.org/docs/charts/stable/jackett) + +--- + +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/komga/6.0.31/charts/common-10.4.12.tgz b/stable/jackett/11.0.61/charts/common-10.4.12.tgz similarity index 100% rename from stable/komga/6.0.31/charts/common-10.4.12.tgz rename to stable/jackett/11.0.61/charts/common-10.4.12.tgz diff --git a/stable/jackett/11.0.61/ix_values.yaml b/stable/jackett/11.0.61/ix_values.yaml new file mode 100644 index 00000000000..a8834270c6b --- /dev/null +++ b/stable/jackett/11.0.61/ix_values.yaml @@ -0,0 +1,33 @@ +image: + repository: tccr.io/truecharts/jackett + pullPolicy: IfNotPresent + tag: 0.20.1740@sha256:71df2022e355dbaee62ca7ee023dbb14e17aa1692e6d4ff0dec3a4f770bb3267 + +securityContext: + readOnlyRootFilesystem: false + +service: + main: + ports: + main: + protocol: HTTP + targetPort: 9117 + port: 9117 + +probes: + liveness: + path: "/UI/Login" + + readiness: + path: "/UI/Login" + + startup: + path: "/UI/Login" + +persistence: + config: + enabled: true + mountPath: "/config" + +portal: + enabled: true diff --git a/stable/jackett/11.0.61/questions.yaml b/stable/jackett/11.0.61/questions.yaml new file mode 100644 index 00000000000..d6ccb0dc8b4 --- /dev/null +++ b/stable/jackett/11.0.61/questions.yaml @@ -0,0 +1,2426 @@ +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 + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - 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 + required: true + enum: + - value: deployment + description: Deployment + - value: statefulset + description: Statefulset + - value: daemonset + description: Daemonset + default: deployment + - variable: replicas + description: Number of desired pod replicas + label: Desired Replicas + schema: + type: int + required: true + default: 1 + - variable: strategy + description: Please specify type of workload to deploy + label: (Advanced) Update Strategy + schema: + type: string + 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" + default: Recreate + - variable: expert + label: Show Expert Configuration Options + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - 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: customextraargs + group: Controller + label: "Extra Args" + description: "Do not click this unless you know what you are doing" + 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: 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 Configuration + 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: 9117 + required: true + - variable: advanced + label: Show Advanced Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: Enable the Port + schema: + type: boolean + hidden: true + default: true + - 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: 9117 + - 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: Name Servers + schema: + default: [] + type: list + items: + - variable: nameserver + label: Name Server + 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: Host Path (simple) + - value: emptyDir + description: emptyDir + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - 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: false + - variable: setPermissions + label: Automatic Permissions + description: Automatically set permissions on install + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPathSimple + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: Host Path + 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: Host Path (Simple) + - value: emptyDir + description: emptyDir + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - 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: Read Only + schema: + type: boolean + default: false + - variable: hostPathSimple + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: Mount Path + 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) Host Path 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: Path Type + 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: Path Type + 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 the 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: true + - 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: 568 + - variable: runAsGroup + label: "runAsGroup" + description: "The groupID this App of the user running the application" + schema: + type: int + default: 568 + - 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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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: IP Block +# 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: Namespace Selector +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: Match Expressions +# 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: Match Expressions +# 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: End 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: IP Block +# 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: Namespace Selector +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: Match Expressions +# 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: Match Expressions +# 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: End 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 (Optional) + 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 IPv6 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: Deploy Key + schema: + type: string + - variable: deployKeyBase64 + description: Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence + label: Deploy Key Base64 + 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 Command 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 + - variable: docs + group: Documentation + label: 'Please read the documentation at https://truecharts.org' + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDocs + label: 'I have checked the documentation' + schema: + type: boolean + default: true +# - variable: donate +# group: Documentation +# label: 'Please consider supporting TrueCharts, see: https://truecharts.org/docs/about/sponsor' +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: confirmDonate +# label: 'I have considered supporting the project' +# schema: +# type: boolean +# default: true diff --git a/stable/kavita/2.0.27/templates/common.yaml b/stable/jackett/11.0.61/templates/common.yaml similarity index 100% rename from stable/kavita/2.0.27/templates/common.yaml rename to stable/jackett/11.0.61/templates/common.yaml diff --git a/stable/komga/6.0.31/values.yaml b/stable/jackett/11.0.61/values.yaml similarity index 100% rename from stable/komga/6.0.31/values.yaml rename to stable/jackett/11.0.61/values.yaml diff --git a/stable/jdownloader2/8.0.27/Chart.lock b/stable/jdownloader2/8.0.27/Chart.lock deleted file mode 100644 index 42d42203218..00000000000 --- a/stable/jdownloader2/8.0.27/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-12T22:16:14.328872193Z" diff --git a/stable/jdownloader2/8.0.27/CHANGELOG.md b/stable/jdownloader2/8.0.28/CHANGELOG.md similarity index 88% rename from stable/jdownloader2/8.0.27/CHANGELOG.md rename to stable/jdownloader2/8.0.28/CHANGELOG.md index 40aeef0a2c9..8c9961b2b42 100644 --- a/stable/jdownloader2/8.0.27/CHANGELOG.md +++ b/stable/jdownloader2/8.0.28/CHANGELOG.md @@ -2,6 +2,15 @@ +## [jdownloader2-8.0.28](https://github.com/truecharts/charts/compare/jdownloader2-8.0.27...jdownloader2-8.0.28) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [jdownloader2-8.0.27](https://github.com/truecharts/charts/compare/jdownloader2-8.0.26...jdownloader2-8.0.27) (2022-08-12) ### Chore @@ -88,12 +97,3 @@ ## [jdownloader2-8.0.22](https://github.com/truecharts/apps/compare/jdownloader2-8.0.20...jdownloader2-8.0.22) (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)) - - - -## [jdownloader2-8.0.20](https://github.com/truecharts/apps/compare/jdownloader2-8.0.19...jdownloader2-8.0.20) (2022-07-20) - -### Chore diff --git a/stable/docker-compose/2.0.31/Chart.lock b/stable/jdownloader2/8.0.28/Chart.lock similarity index 80% rename from stable/docker-compose/2.0.31/Chart.lock rename to stable/jdownloader2/8.0.28/Chart.lock index 88f011f031d..bc280bc1613 100644 --- a/stable/docker-compose/2.0.31/Chart.lock +++ b/stable/jdownloader2/8.0.28/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://library-charts.truecharts.org version: 10.4.12 digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-17T18:33:29.29416178Z" +generated: "2022-08-19T05:53:05.73466172Z" diff --git a/stable/jdownloader2/8.0.27/Chart.yaml b/stable/jdownloader2/8.0.28/Chart.yaml similarity index 96% rename from stable/jdownloader2/8.0.27/Chart.yaml rename to stable/jdownloader2/8.0.28/Chart.yaml index 048bd4f04c3..319cd9a62f4 100644 --- a/stable/jdownloader2/8.0.27/Chart.yaml +++ b/stable/jdownloader2/8.0.28/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: "1.7.1" +appVersion: "1.7.2" dependencies: - name: common repository: https://library-charts.truecharts.org @@ -23,7 +23,7 @@ sources: - https://hub.docker.com/r/jlesage/jdownloader-2 - https://jdownloader.org/ type: application -version: 8.0.27 +version: 8.0.28 annotations: truecharts.org/catagories: | - downloads diff --git a/stable/jdownloader2/8.0.27/README.md b/stable/jdownloader2/8.0.28/README.md similarity index 95% rename from stable/jdownloader2/8.0.27/README.md rename to stable/jdownloader2/8.0.28/README.md index 7bd17afce4f..ac82e4d9b83 100644 --- a/stable/jdownloader2/8.0.27/README.md +++ b/stable/jdownloader2/8.0.28/README.md @@ -1,6 +1,6 @@ # jdownloader2 -![Version: 8.0.27](https://img.shields.io/badge/Version-8.0.27-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: 8.0.28](https://img.shields.io/badge/Version-8.0.28-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.7.2](https://img.shields.io/badge/AppVersion-1.7.2-informational?style=flat-square) JDownloader is a free, open-source download management tool with a huge community of developers that makes downloading as easy and fast as it should be. diff --git a/stable/jdownloader2/8.0.27/app-readme.md b/stable/jdownloader2/8.0.28/app-readme.md similarity index 100% rename from stable/jdownloader2/8.0.27/app-readme.md rename to stable/jdownloader2/8.0.28/app-readme.md diff --git a/stable/omada-controller/6.0.49/charts/common-10.4.12.tgz b/stable/jdownloader2/8.0.28/charts/common-10.4.12.tgz similarity index 100% rename from stable/omada-controller/6.0.49/charts/common-10.4.12.tgz rename to stable/jdownloader2/8.0.28/charts/common-10.4.12.tgz diff --git a/stable/jdownloader2/8.0.27/ix_values.yaml b/stable/jdownloader2/8.0.28/ix_values.yaml similarity index 94% rename from stable/jdownloader2/8.0.27/ix_values.yaml rename to stable/jdownloader2/8.0.28/ix_values.yaml index 8a15c98bac3..c2aa36d0b69 100644 --- a/stable/jdownloader2/8.0.27/ix_values.yaml +++ b/stable/jdownloader2/8.0.28/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/jdownloader-2 pullPolicy: IfNotPresent - tag: v1.7.1@sha256:0fa1e812b97754b348eaa1fa2c7a66a222bee123303e8eff571b6800f7c1093c + tag: 1.7.2@sha256:158a40f5219cb607c368fc51d2f06cf6ee782927b8bd3f2899fdfa197451cd08 securityContext: readOnlyRootFilesystem: false diff --git a/stable/jdownloader2/8.0.27/questions.yaml b/stable/jdownloader2/8.0.28/questions.yaml similarity index 100% rename from stable/jdownloader2/8.0.27/questions.yaml rename to stable/jdownloader2/8.0.28/questions.yaml diff --git a/stable/komga/6.0.31/templates/common.yaml b/stable/jdownloader2/8.0.28/templates/common.yaml similarity index 100% rename from stable/komga/6.0.31/templates/common.yaml rename to stable/jdownloader2/8.0.28/templates/common.yaml diff --git a/stable/omada-controller/6.0.49/values.yaml b/stable/jdownloader2/8.0.28/values.yaml similarity index 100% rename from stable/omada-controller/6.0.49/values.yaml rename to stable/jdownloader2/8.0.28/values.yaml diff --git a/stable/kavita/2.0.27/Chart.lock b/stable/kavita/2.0.27/Chart.lock deleted file mode 100644 index 8245e48f75d..00000000000 --- a/stable/kavita/2.0.27/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-12T22:16:52.277271376Z" diff --git a/stable/kavita/2.0.27/CHANGELOG.md b/stable/kavita/2.0.28/CHANGELOG.md similarity index 91% rename from stable/kavita/2.0.27/CHANGELOG.md rename to stable/kavita/2.0.28/CHANGELOG.md index 29cfbf4864e..04e4e49d045 100644 --- a/stable/kavita/2.0.27/CHANGELOG.md +++ b/stable/kavita/2.0.28/CHANGELOG.md @@ -2,6 +2,15 @@ +## [kavita-2.0.28](https://github.com/truecharts/charts/compare/kavita-2.0.27...kavita-2.0.28) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [kavita-2.0.27](https://github.com/truecharts/charts/compare/kavita-2.0.26...kavita-2.0.27) (2022-08-12) ### Chore @@ -88,12 +97,3 @@ ## [kavita-2.0.22](https://github.com/truecharts/apps/compare/kavita-2.0.21...kavita-2.0.22) (2022-07-23) ### Chore - -- update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) - - - - -## [kavita-2.0.21](https://github.com/truecharts/apps/compare/kavita-2.0.19...kavita-2.0.21) (2022-07-22) - -### Chore diff --git a/stable/kavita/2.0.28/Chart.lock b/stable/kavita/2.0.28/Chart.lock new file mode 100644 index 00000000000..4db54a5c264 --- /dev/null +++ b/stable/kavita/2.0.28/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:53:10.09930187Z" diff --git a/stable/kavita/2.0.27/Chart.yaml b/stable/kavita/2.0.28/Chart.yaml similarity index 95% rename from stable/kavita/2.0.27/Chart.yaml rename to stable/kavita/2.0.28/Chart.yaml index 3ac5b2d3155..b286b1bf591 100644 --- a/stable/kavita/2.0.27/Chart.yaml +++ b/stable/kavita/2.0.28/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v2 kubeVersion: ">=1.16.0-0" name: kavita -version: 2.0.27 -appVersion: "0.5.4" +version: 2.0.28 +appVersion: "0.5.5" description: Kavita is a rocket fueled self-hosted digital library which supports a vast array of file formats type: application deprecated: false diff --git a/stable/kavita/2.0.27/README.md b/stable/kavita/2.0.28/README.md similarity index 95% rename from stable/kavita/2.0.27/README.md rename to stable/kavita/2.0.28/README.md index f9283f69480..6be08a0b3fd 100644 --- a/stable/kavita/2.0.27/README.md +++ b/stable/kavita/2.0.28/README.md @@ -1,6 +1,6 @@ # kavita -![Version: 2.0.27](https://img.shields.io/badge/Version-2.0.27-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.5.4](https://img.shields.io/badge/AppVersion-0.5.4-informational?style=flat-square) +![Version: 2.0.28](https://img.shields.io/badge/Version-2.0.28-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.5.5](https://img.shields.io/badge/AppVersion-0.5.5-informational?style=flat-square) Kavita is a rocket fueled self-hosted digital library which supports a vast array of file formats diff --git a/stable/kavita/2.0.27/app-readme.md b/stable/kavita/2.0.28/app-readme.md similarity index 100% rename from stable/kavita/2.0.27/app-readme.md rename to stable/kavita/2.0.28/app-readme.md diff --git a/stable/openspeedtest/1.0.25/charts/common-10.4.12.tgz b/stable/kavita/2.0.28/charts/common-10.4.12.tgz similarity index 100% rename from stable/openspeedtest/1.0.25/charts/common-10.4.12.tgz rename to stable/kavita/2.0.28/charts/common-10.4.12.tgz diff --git a/stable/kavita/2.0.27/ix_values.yaml b/stable/kavita/2.0.28/ix_values.yaml similarity index 83% rename from stable/kavita/2.0.27/ix_values.yaml rename to stable/kavita/2.0.28/ix_values.yaml index 6c02694f2ca..b57b5832162 100644 --- a/stable/kavita/2.0.27/ix_values.yaml +++ b/stable/kavita/2.0.28/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/kavita pullPolicy: IfNotPresent - tag: v0.5.4@sha256:9db6c0712df77c33f778cbdd30da3ac39c55732a51a9faac055a3e0d2742fcd9 + tag: 0.5.5@sha256:7ef5f43aa17d88012a7b32677c8673a6d0b238d2fa976f0feb15d570c5b40e2d securityContext: readOnlyRootFilesystem: false diff --git a/stable/kavita/2.0.27/questions.yaml b/stable/kavita/2.0.28/questions.yaml similarity index 100% rename from stable/kavita/2.0.27/questions.yaml rename to stable/kavita/2.0.28/questions.yaml diff --git a/stable/omada-controller/6.0.49/templates/common.yaml b/stable/kavita/2.0.28/templates/common.yaml similarity index 100% rename from stable/omada-controller/6.0.49/templates/common.yaml rename to stable/kavita/2.0.28/templates/common.yaml diff --git a/stable/openspeedtest/1.0.25/values.yaml b/stable/kavita/2.0.28/values.yaml similarity index 100% rename from stable/openspeedtest/1.0.25/values.yaml rename to stable/kavita/2.0.28/values.yaml diff --git a/stable/komga/6.0.31/Chart.lock b/stable/komga/6.0.31/Chart.lock deleted file mode 100644 index 2d3cd6527d2..00000000000 --- a/stable/komga/6.0.31/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-12T22:17:34.506537611Z" diff --git a/stable/komga/6.0.31/CHANGELOG.md b/stable/komga/6.0.32/CHANGELOG.md similarity index 90% rename from stable/komga/6.0.31/CHANGELOG.md rename to stable/komga/6.0.32/CHANGELOG.md index 4f776a225bd..42c04e8ef28 100644 --- a/stable/komga/6.0.31/CHANGELOG.md +++ b/stable/komga/6.0.32/CHANGELOG.md @@ -2,6 +2,15 @@ +## [komga-6.0.32](https://github.com/truecharts/charts/compare/komga-6.0.31...komga-6.0.32) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [komga-6.0.31](https://github.com/truecharts/charts/compare/komga-6.0.30...komga-6.0.31) (2022-08-12) ### Chore @@ -88,12 +97,3 @@ ### Chore -- Auto-update chart README [skip ci] - - update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) - - - - -## [komga-6.0.25](https://github.com/truecharts/apps/compare/komga-6.0.24...komga-6.0.25) (2022-07-23) - -### Chore diff --git a/stable/komga/6.0.32/Chart.lock b/stable/komga/6.0.32/Chart.lock new file mode 100644 index 00000000000..85a6bc68c68 --- /dev/null +++ b/stable/komga/6.0.32/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:53:20.144106218Z" diff --git a/stable/komga/6.0.31/Chart.yaml b/stable/komga/6.0.32/Chart.yaml similarity index 95% rename from stable/komga/6.0.31/Chart.yaml rename to stable/komga/6.0.32/Chart.yaml index c62ad6127d3..c3b4a373bd0 100644 --- a/stable/komga/6.0.31/Chart.yaml +++ b/stable/komga/6.0.32/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: "0.157.0" +appVersion: "0.157.1" dependencies: - name: common repository: https://library-charts.truecharts.org @@ -22,7 +22,7 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/komga - https://komga.org/ - https://github.com/gotson/komga -version: 6.0.31 +version: 6.0.32 annotations: truecharts.org/catagories: | - media diff --git a/stable/komga/6.0.31/README.md b/stable/komga/6.0.32/README.md similarity index 94% rename from stable/komga/6.0.31/README.md rename to stable/komga/6.0.32/README.md index e64e2caa81d..892ba0f7f62 100644 --- a/stable/komga/6.0.31/README.md +++ b/stable/komga/6.0.32/README.md @@ -1,6 +1,6 @@ # komga -![Version: 6.0.31](https://img.shields.io/badge/Version-6.0.31-informational?style=flat-square) ![AppVersion: 0.157.0](https://img.shields.io/badge/AppVersion-0.157.0-informational?style=flat-square) +![Version: 6.0.32](https://img.shields.io/badge/Version-6.0.32-informational?style=flat-square) ![AppVersion: 0.157.1](https://img.shields.io/badge/AppVersion-0.157.1-informational?style=flat-square) A comics/mangas server to serve/stream pages via API diff --git a/stable/komga/6.0.31/app-readme.md b/stable/komga/6.0.32/app-readme.md similarity index 100% rename from stable/komga/6.0.31/app-readme.md rename to stable/komga/6.0.32/app-readme.md diff --git a/stable/prometheus/4.0.62/charts/common-10.4.12.tgz b/stable/komga/6.0.32/charts/common-10.4.12.tgz similarity index 100% rename from stable/prometheus/4.0.62/charts/common-10.4.12.tgz rename to stable/komga/6.0.32/charts/common-10.4.12.tgz diff --git a/stable/komga/6.0.31/ix_values.yaml b/stable/komga/6.0.32/ix_values.yaml similarity index 77% rename from stable/komga/6.0.31/ix_values.yaml rename to stable/komga/6.0.32/ix_values.yaml index 800519b31cf..2effaf4ac86 100644 --- a/stable/komga/6.0.31/ix_values.yaml +++ b/stable/komga/6.0.32/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/komga - tag: 0.157.0@sha256:0e59030a33f0c17613a20e6c93d5473c1e415e97d810448b6bfc5bd7b303da01 + tag: 0.157.1@sha256:770f16040dedb6642424f2cf0e4d5282d3777283e412d3d4f0b7fb8a09935475 pullPolicy: IfNotPresent service: diff --git a/stable/komga/6.0.31/questions.yaml b/stable/komga/6.0.32/questions.yaml similarity index 100% rename from stable/komga/6.0.31/questions.yaml rename to stable/komga/6.0.32/questions.yaml diff --git a/stable/openspeedtest/1.0.25/templates/common.yaml b/stable/komga/6.0.32/templates/common.yaml similarity index 100% rename from stable/openspeedtest/1.0.25/templates/common.yaml rename to stable/komga/6.0.32/templates/common.yaml diff --git a/stable/prometheus/4.0.62/values.yaml b/stable/komga/6.0.32/values.yaml similarity index 100% rename from stable/prometheus/4.0.62/values.yaml rename to stable/komga/6.0.32/values.yaml diff --git a/stable/omada-controller/6.0.49/Chart.lock b/stable/omada-controller/6.0.49/Chart.lock deleted file mode 100644 index 7c5f6f635c7..00000000000 --- a/stable/omada-controller/6.0.49/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-14T09:28:54.434545902Z" diff --git a/stable/omada-controller/6.0.49/CHANGELOG.md b/stable/omada-controller/6.0.50/CHANGELOG.md similarity index 91% rename from stable/omada-controller/6.0.49/CHANGELOG.md rename to stable/omada-controller/6.0.50/CHANGELOG.md index 607db38e01b..a15644dd0b4 100644 --- a/stable/omada-controller/6.0.49/CHANGELOG.md +++ b/stable/omada-controller/6.0.50/CHANGELOG.md @@ -2,6 +2,15 @@ +## [omada-controller-6.0.50](https://github.com/truecharts/charts/compare/omada-controller-6.0.49...omada-controller-6.0.50) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [omada-controller-6.0.49](https://github.com/truecharts/charts/compare/omada-controller-6.0.48...omada-controller-6.0.49) (2022-08-14) ### Chore @@ -88,12 +97,3 @@ - Auto-update chart README [skip ci] - update docker general non-major ([#3295](https://github.com/truecharts/apps/issues/3295)) - - - - -## [omada-controller-6.0.40](https://github.com/truecharts/apps/compare/omada-controller-6.0.39...omada-controller-6.0.40) (2022-07-25) - -### Chore - -- update docker general non-major ([#3295](https://github.com/truecharts/apps/issues/3295)) diff --git a/stable/omada-controller/6.0.50/Chart.lock b/stable/omada-controller/6.0.50/Chart.lock new file mode 100644 index 00000000000..f86af174c19 --- /dev/null +++ b/stable/omada-controller/6.0.50/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:53:27.482565238Z" diff --git a/stable/omada-controller/6.0.49/Chart.yaml b/stable/omada-controller/6.0.50/Chart.yaml similarity index 98% rename from stable/omada-controller/6.0.49/Chart.yaml rename to stable/omada-controller/6.0.50/Chart.yaml index a56a882f077..5e8db7dada3 100644 --- a/stable/omada-controller/6.0.49/Chart.yaml +++ b/stable/omada-controller/6.0.50/Chart.yaml @@ -18,7 +18,7 @@ name: omada-controller sources: - https://github.com/truecharts/charts/tree/master/charts/stable/omada-controller - https://github.com/mbentley/docker-omada-controller -version: 6.0.49 +version: 6.0.50 annotations: truecharts.org/catagories: | - media diff --git a/stable/omada-controller/6.0.49/README.md b/stable/omada-controller/6.0.50/README.md similarity index 98% rename from stable/omada-controller/6.0.49/README.md rename to stable/omada-controller/6.0.50/README.md index fe604d21ee6..008a5cdaa55 100644 --- a/stable/omada-controller/6.0.49/README.md +++ b/stable/omada-controller/6.0.50/README.md @@ -1,6 +1,6 @@ # omada-controller -![Version: 6.0.49](https://img.shields.io/badge/Version-6.0.49-informational?style=flat-square) ![AppVersion: 5.4](https://img.shields.io/badge/AppVersion-5.4-informational?style=flat-square) +![Version: 6.0.50](https://img.shields.io/badge/Version-6.0.50-informational?style=flat-square) ![AppVersion: 5.4](https://img.shields.io/badge/AppVersion-5.4-informational?style=flat-square) Omada is a SDN tool for TP-Link Omada hardware diff --git a/stable/omada-controller/6.0.49/app-readme.md b/stable/omada-controller/6.0.50/app-readme.md similarity index 100% rename from stable/omada-controller/6.0.49/app-readme.md rename to stable/omada-controller/6.0.50/app-readme.md diff --git a/stable/rsshub/3.0.66/charts/common-10.4.12.tgz b/stable/omada-controller/6.0.50/charts/common-10.4.12.tgz similarity index 100% rename from stable/rsshub/3.0.66/charts/common-10.4.12.tgz rename to stable/omada-controller/6.0.50/charts/common-10.4.12.tgz diff --git a/stable/omada-controller/6.0.49/ix_values.yaml b/stable/omada-controller/6.0.50/ix_values.yaml similarity index 93% rename from stable/omada-controller/6.0.49/ix_values.yaml rename to stable/omada-controller/6.0.50/ix_values.yaml index a4858647aa4..1317dd785c2 100644 --- a/stable/omada-controller/6.0.49/ix_values.yaml +++ b/stable/omada-controller/6.0.50/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: tccr.io/truecharts/omada-controller - tag: 5.4@sha256:56910b62615b86b313fa3e3381a1eb5348049f875115aef066a5e09da2d20148 + tag: 5.4@sha256:c00ab14a93b3cfcc271357a601dd7069ae59549c6cd5010aacbde62eedc7bcc7 pullPolicy: IfNotPresent securityContext: diff --git a/stable/omada-controller/6.0.49/questions.yaml b/stable/omada-controller/6.0.50/questions.yaml similarity index 100% rename from stable/omada-controller/6.0.49/questions.yaml rename to stable/omada-controller/6.0.50/questions.yaml diff --git a/stable/rsshub/3.0.66/templates/common.yaml b/stable/omada-controller/6.0.50/templates/common.yaml similarity index 100% rename from stable/rsshub/3.0.66/templates/common.yaml rename to stable/omada-controller/6.0.50/templates/common.yaml diff --git a/stable/rsshub/3.0.66/values.yaml b/stable/omada-controller/6.0.50/values.yaml similarity index 100% rename from stable/rsshub/3.0.66/values.yaml rename to stable/omada-controller/6.0.50/values.yaml diff --git a/stable/openspeedtest/1.0.25/Chart.lock b/stable/openspeedtest/1.0.25/Chart.lock deleted file mode 100644 index 50a384409d8..00000000000 --- a/stable/openspeedtest/1.0.25/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 10.4.12 -digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 -generated: "2022-08-12T22:25:17.293815324Z" diff --git a/stable/openspeedtest/1.0.25/CHANGELOG.md b/stable/openspeedtest/1.0.26/CHANGELOG.md similarity index 91% rename from stable/openspeedtest/1.0.25/CHANGELOG.md rename to stable/openspeedtest/1.0.26/CHANGELOG.md index 0ed3351dbfd..127e429dbe6 100644 --- a/stable/openspeedtest/1.0.25/CHANGELOG.md +++ b/stable/openspeedtest/1.0.26/CHANGELOG.md @@ -2,6 +2,15 @@ +## [openspeedtest-1.0.26](https://github.com/truecharts/charts/compare/openspeedtest-1.0.25...openspeedtest-1.0.26) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [openspeedtest-1.0.25](https://github.com/truecharts/charts/compare/openspeedtest-1.0.24...openspeedtest-1.0.25) (2022-08-12) ### Chore @@ -88,12 +97,3 @@ ## [openspeedtest-1.0.20](https://github.com/truecharts/apps/compare/openspeedtest-1.0.19...openspeedtest-1.0.20) (2022-07-23) ### Chore - -- update helm general non-major helm releases ([#3280](https://github.com/truecharts/apps/issues/3280)) - - - - -## [openspeedtest-1.0.19](https://github.com/truecharts/apps/compare/openspeedtest-1.0.17...openspeedtest-1.0.19) (2022-07-22) - -### Chore diff --git a/stable/openspeedtest/1.0.26/Chart.lock b/stable/openspeedtest/1.0.26/Chart.lock new file mode 100644 index 00000000000..78695dac8e0 --- /dev/null +++ b/stable/openspeedtest/1.0.26/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:53:27.441422428Z" diff --git a/stable/openspeedtest/1.0.25/Chart.yaml b/stable/openspeedtest/1.0.26/Chart.yaml similarity index 98% rename from stable/openspeedtest/1.0.25/Chart.yaml rename to stable/openspeedtest/1.0.26/Chart.yaml index b38a3247cbb..072c8a289e6 100644 --- a/stable/openspeedtest/1.0.25/Chart.yaml +++ b/stable/openspeedtest/1.0.26/Chart.yaml @@ -22,7 +22,7 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/openspeedtest - https://github.com/openspeedtest/Speed-Test type: application -version: 1.0.25 +version: 1.0.26 annotations: truecharts.org/catagories: | - utilities diff --git a/stable/openspeedtest/1.0.25/README.md b/stable/openspeedtest/1.0.26/README.md similarity index 98% rename from stable/openspeedtest/1.0.25/README.md rename to stable/openspeedtest/1.0.26/README.md index 193ca48a878..096b9724b95 100644 --- a/stable/openspeedtest/1.0.25/README.md +++ b/stable/openspeedtest/1.0.26/README.md @@ -1,6 +1,6 @@ # openspeedtest -![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: latest](https://img.shields.io/badge/AppVersion-latest-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: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square) HTML5 Network Speed Test Server. You can test download & upload speed from any device within your network with a web browser that is IE10 or new. diff --git a/stable/openspeedtest/1.0.25/app-readme.md b/stable/openspeedtest/1.0.26/app-readme.md similarity index 100% rename from stable/openspeedtest/1.0.25/app-readme.md rename to stable/openspeedtest/1.0.26/app-readme.md diff --git a/stable/vikunja/3.0.40/charts/common-10.4.12.tgz b/stable/openspeedtest/1.0.26/charts/common-10.4.12.tgz similarity index 100% rename from stable/vikunja/3.0.40/charts/common-10.4.12.tgz rename to stable/openspeedtest/1.0.26/charts/common-10.4.12.tgz diff --git a/stable/openspeedtest/1.0.25/ix_values.yaml b/stable/openspeedtest/1.0.26/ix_values.yaml similarity index 79% rename from stable/openspeedtest/1.0.25/ix_values.yaml rename to stable/openspeedtest/1.0.26/ix_values.yaml index 0a35558e5a0..e891272aca2 100644 --- a/stable/openspeedtest/1.0.25/ix_values.yaml +++ b/stable/openspeedtest/1.0.26/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: tccr.io/truecharts/openspeedtest pullPolicy: IfNotPresent - tag: latest@sha256:f2cff023225167b4bb71d3a17d2b62ab0a227305f96be33f92c60be67038af3e + tag: latest@sha256:641c5bfddb0353fa79050af56dd4478fd9485b73908035a73eba4e35c5563101 securityContext: readOnlyRootFilesystem: false diff --git a/stable/openspeedtest/1.0.25/questions.yaml b/stable/openspeedtest/1.0.26/questions.yaml similarity index 100% rename from stable/openspeedtest/1.0.25/questions.yaml rename to stable/openspeedtest/1.0.26/questions.yaml diff --git a/stable/wekan/4.0.35/templates/common.yaml b/stable/openspeedtest/1.0.26/templates/common.yaml similarity index 100% rename from stable/wekan/4.0.35/templates/common.yaml rename to stable/openspeedtest/1.0.26/templates/common.yaml diff --git a/stable/vikunja/3.0.40/values.yaml b/stable/openspeedtest/1.0.26/values.yaml similarity index 100% rename from stable/vikunja/3.0.40/values.yaml rename to stable/openspeedtest/1.0.26/values.yaml diff --git a/stable/plex/10.1.1/CHANGELOG.md b/stable/plex/10.1.1/CHANGELOG.md new file mode 100644 index 00000000000..1529abf6e8c --- /dev/null +++ b/stable/plex/10.1.1/CHANGELOG.md @@ -0,0 +1,99 @@ +# Changelog + + + +## [plex-10.1.1](https://github.com/truecharts/charts/compare/plex-10.1.0...plex-10.1.1) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + +## [plex-10.1.0](https://github.com/truecharts/charts/compare/plextraktsync-0.0.20...plex-10.1.0) (2022-08-18) + +### Feat + +- Pre-fill ADVERTISE_IP with the server ip and ingress ([#3464](https://github.com/truecharts/charts/issues/3464)) + + + + +## [plex-10.0.34](https://github.com/truecharts/charts/compare/plex-10.0.33...plex-10.0.34) (2022-08-12) + +### Chore + +- add documentation checkbox/section to all SCALE Apps + - update helm general non-major helm releases ([#3456](https://github.com/truecharts/charts/issues/3456)) + + + + +## [plex-10.0.33](https://github.com/truecharts/charts/compare/plex-10.0.32...plex-10.0.33) (2022-08-12) + +### Fix + +- accept `-` and capital letters in ADVERTISE_IP ([#3448](https://github.com/truecharts/charts/issues/3448)) + - move extraArgs from .Values.controller to .Values ([#3447](https://github.com/truecharts/charts/issues/3447)) + + + + +## [plex-10.0.32](https://github.com/truecharts/charts/compare/plex-10.0.31...plex-10.0.32) (2022-08-11) + +### Fix + +- allow empty advertise IP ([#3437](https://github.com/truecharts/charts/issues/3437)) + + + + +## [plex-10.0.31](https://github.com/truecharts/charts/compare/plex-10.0.30...plex-10.0.31) (2022-08-10) + +### Fix + +- Adjust input validation for comma separated list ([#3430](https://github.com/truecharts/charts/issues/3430)) + + + + +## [plex-10.0.30](https://github.com/truecharts/charts/compare/plextraktsync-0.0.18...plex-10.0.30) (2022-08-10) + +### Chore + +- set advertise_ip to required ([#3426](https://github.com/truecharts/charts/issues/3426)) + + + + +## [plex-10.0.29](https://github.com/truecharts/charts/compare/plextraktsync-0.0.17...plex-10.0.29) (2022-08-10) + +### Chore + +- update docker general non-major ([#3421](https://github.com/truecharts/charts/issues/3421)) + + + + +## [plex-10.0.28](https://github.com/truecharts/charts/compare/plextraktsync-0.0.15...plex-10.0.28) (2022-08-08) + +### Chore + +- update helm general non-major helm releases ([#3376](https://github.com/truecharts/charts/issues/3376)) + - replace questions parts with templates ([#3402](https://github.com/truecharts/charts/issues/3402)) + + + + +## [plex-10.0.27](https://github.com/truecharts/apps/compare/owi2plex-0.0.13...plex-10.0.27) (2022-07-26) + +### Chore + +- update home links ([#3291](https://github.com/truecharts/apps/issues/3291)) + - update helm general non-major helm releases ([#3302](https://github.com/truecharts/apps/issues/3302)) + + + + +## [plex-10.0.26](https://github.com/truecharts/apps/compare/plexripper-0.0.12...plex-10.0.26) (2022-07-25) diff --git a/stable/plex/10.1.1/Chart.lock b/stable/plex/10.1.1/Chart.lock new file mode 100644 index 00000000000..7b3bd9ad101 --- /dev/null +++ b/stable/plex/10.1.1/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +digest: sha256:2b926ab794b2ebae2ba0c898ffe38320266e86eafebe44d869c8f0721f5dac27 +generated: "2022-08-19T05:53:32.045232789Z" diff --git a/stable/plex/10.1.1/Chart.yaml b/stable/plex/10.1.1/Chart.yaml new file mode 100644 index 00000000000..e546d52a68e --- /dev/null +++ b/stable/plex/10.1.1/Chart.yaml @@ -0,0 +1,29 @@ +apiVersion: v2 +appVersion: "1.28.1.610" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 10.4.12 +deprecated: false +description: Plex Media Server +home: https://truecharts.org/docs/charts/stable/plex +icon: https://truecharts.org/img/hotlink-ok/chart-icons/plex.png +keywords: + - plex + - plex-media-server +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: plex +sources: + - https://github.com/truecharts/charts/tree/master/charts/stable/plex + - https://github.com/k8s-at-home/container-images/pkgs/container/plex +type: application +version: 10.1.1 +annotations: + truecharts.org/catagories: | + - media + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/stable/plex/10.1.1/README.md b/stable/plex/10.1.1/README.md new file mode 100644 index 00000000000..8d11ec99ab9 --- /dev/null +++ b/stable/plex/10.1.1/README.md @@ -0,0 +1,108 @@ +# plex + +![Version: 10.1.1](https://img.shields.io/badge/Version-10.1.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.28.1.610](https://img.shields.io/badge/AppVersion-1.28.1.610-informational?style=flat-square) + +Plex Media Server + +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: [plex](https://truecharts.org/docs/charts/stable/plex) + +**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.12 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this Chart on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Installing-an-App). + +### Helm + +To install the chart with the release name `plex` + +```console +helm repo add TrueCharts https://charts.truecharts.org +helm repo update +helm install plex TrueCharts/plex +``` + +## Uninstall + +### TrueNAS SCALE + +**Upgrading, Rolling Back and Uninstalling the Chart** + +To upgrade, rollback or delete this Chart from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Upgrade-rollback-delete-an-App). + +### Helm + +To uninstall the `plex` deployment + +```console +helm uninstall plex +``` + +## 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 command line + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install plex \ + --set env.TZ="America/New York" \ + TrueCharts/plex +``` + +#### 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 plex TrueCharts/plex -f values.yaml +``` + +#### Connecting to other charts + +If you need to connect this Chart to other Charts on TrueNAS SCALE, please refer to our [Linking Charts Internally](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/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/plex/10.1.1/app-readme.md b/stable/plex/10.1.1/app-readme.md new file mode 100644 index 00000000000..0c9dfd48c99 --- /dev/null +++ b/stable/plex/10.1.1/app-readme.md @@ -0,0 +1,8 @@ +Plex Media Server + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/docs/charts/stable/plex](https://truecharts.org/docs/charts/stable/plex) + +--- + +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/wekan/4.0.35/charts/common-10.4.12.tgz b/stable/plex/10.1.1/charts/common-10.4.12.tgz similarity index 100% rename from stable/wekan/4.0.35/charts/common-10.4.12.tgz rename to stable/plex/10.1.1/charts/common-10.4.12.tgz diff --git a/stable/plex/10.1.1/ix_values.yaml b/stable/plex/10.1.1/ix_values.yaml new file mode 100644 index 00000000000..a34544e92c7 --- /dev/null +++ b/stable/plex/10.1.1/ix_values.yaml @@ -0,0 +1,34 @@ +image: + repository: tccr.io/truecharts/plex + pullPolicy: IfNotPresent + tag: 1.28.1.6104@sha256:df3c89bdef22d8b618aadcc538fcff658cd707a4567c2fd2bffe4dbbf34f16b9 + +service: + main: + ports: + main: + protocol: HTTP + port: 32400 + targetPort: 32400 + +persistence: + config: + enabled: true + mountPath: "/config" + +plex: + serverURL: "{{ .Values.service.main.ports.main.protocol | lower }}://{{ .Values.plex.serverIP }}:{{ .Values.service.main.ports.main.port }}" + serverIngressURL: "{{ if .Values.ingress.main.enabled }}{{ with (first .Values.ingress.main.hosts) }},https://{{ .host }}{{ end }}{{ end }}" + serverIngressURLPort: "{{ if .Values.ingress.main.enabled }}{{ with (first .Values.ingress.main.hosts) }},https://{{ .host }}:{{ .Values.service.main.ports.main.port }}{{ end }}{{ end }}" + # User Defined + serverIP: "127.0.0.1" + additionalAdvertiseURL: "" + +env: + ADVERTISE_IP: "{{ tpl (.Values.plex.serverURL) .}}{{ tpl (.Values.plex.serverIngressURL) . }}{{ tpl (.Values.plex.serverIngressURLPort) . }}{{ with .Values.plex.additionalAdvertiseURL }},{{ . }}{{ end }}" + # User Defined + ALLOWED_NETWORKS: "172.16.0.0/12,10.0.0.0/8,192.168.0.0/16" + PLEX_CLAIM: "" + +portal: + enabled: true diff --git a/stable/plex/10.1.1/questions.yaml b/stable/plex/10.1.1/questions.yaml new file mode 100644 index 00000000000..f6b50d664f8 --- /dev/null +++ b/stable/plex/10.1.1/questions.yaml @@ -0,0 +1,2468 @@ +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 + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" + path: "/web" +questions: + - 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 + required: true + enum: + - value: deployment + description: Deployment + - value: statefulset + description: Statefulset + - value: daemonset + description: Daemonset + default: deployment + - variable: replicas + description: Number of desired pod replicas + label: Desired Replicas + schema: + type: int + required: true + default: 1 + - variable: strategy + description: Please specify type of workload to deploy + label: (Advanced) Update Strategy + schema: + type: string + 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" + default: Recreate + - variable: expert + label: Show Expert Configuration Options + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - 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: customextraargs + group: Controller + label: "Extra Args" + description: "Do not click this unless you know what you are doing" + 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: plex + group: "Container Configuration" + label: "Plex Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: serverIP + label: "Server IP" + description: "Set to the IP-Address used to reach Plex." + schema: + type: string + required: true + $ref: + - "definitions/nodeIP" + - variable: additionalAdvertiseURL + label: "Addition Advertise URLs" + description: "URLs to advertise to Plex, format http(s)://IPorDNS:3200. By default your serverIP and ingress URL is added" + schema: + type: string + valid_chars: '^$|^(http(s)?:\/\/([a-zA-Z0-9.-]*)(:\d{0,5})?,?)*$' + default: "" + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + - variable: ALLOWED_NETWORKS + label: "Allowed Networks" + description: "Networks allowed to connect to plex. Add your local network IP to this list" + schema: + type: string + default: "172.16.0.0/12,10.0.0.0/8,192.168.0.0/16" + - variable: PLEX_CLAIM + label: "Plex Claim Token" + description: "Claim token to use to register the plex server (Max. 4 minutes old!). You can obtain a claim token to login your server to your plex account by visiting https://www.plex.tv/claim." + schema: + type: string + default: "" + - 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 Configuration + 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: 32400 + required: true + - variable: advanced + label: Show Advanced Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: Enable the Port + schema: + type: boolean + hidden: true + default: true + - 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: 32400 + - 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: Name Servers + schema: + default: [] + type: list + items: + - variable: nameserver + label: Name Server + 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: Host Path (simple) + - value: emptyDir + description: emptyDir + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - 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: false + - variable: setPermissions + label: Automatic Permissions + description: Automatically set permissions on install + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPathSimple + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: Host Path + 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: Host Path (Simple) + - value: emptyDir + description: emptyDir + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - 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: Read Only + schema: + type: boolean + default: false + - variable: hostPathSimple + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: Mount Path + 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) Host Path 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: Path Type + 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: Path Type + 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 the 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: true + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: true + - 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: 568 + - variable: runAsGroup + label: "runAsGroup" + description: "The groupID this App of the user running the application" + schema: + type: int + default: 568 + - 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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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/docs/manual/SCALE%20Apps/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: IP Block +# 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: Namespace Selector +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: Match Expressions +# 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: Match Expressions +# 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: End 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: IP Block +# 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: Namespace Selector +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: Match Expressions +# 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: Match Expressions +# 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: End 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 (Optional) + 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 IPv6 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: Deploy Key + schema: + type: string + - variable: deployKeyBase64 + description: Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence + label: Deploy Key Base64 + 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 Command 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 + - variable: docs + group: Documentation + label: 'Please read the documentation at https://truecharts.org' + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDocs + label: 'I have checked the documentation' + schema: + type: boolean + default: true +# - variable: donate +# group: Documentation +# label: 'Please consider supporting TrueCharts, see: https://truecharts.org/docs/about/sponsor' +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: confirmDonate +# label: 'I have considered supporting the project' +# schema: +# type: boolean +# default: true diff --git a/stable/plex/10.1.1/templates/common.yaml b/stable/plex/10.1.1/templates/common.yaml new file mode 100644 index 00000000000..c1a366e1cf0 --- /dev/null +++ b/stable/plex/10.1.1/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.common.loader.all" . }} diff --git a/stable/wekan/4.0.35/values.yaml b/stable/plex/10.1.1/values.yaml similarity index 100% rename from stable/wekan/4.0.35/values.yaml rename to stable/plex/10.1.1/values.yaml diff --git a/stable/prometheus/4.0.62/CHANGELOG.md b/stable/prometheus/4.0.63/CHANGELOG.md similarity index 91% rename from stable/prometheus/4.0.62/CHANGELOG.md rename to stable/prometheus/4.0.63/CHANGELOG.md index 651beac9b5d..9da37a33044 100644 --- a/stable/prometheus/4.0.62/CHANGELOG.md +++ b/stable/prometheus/4.0.63/CHANGELOG.md @@ -2,6 +2,15 @@ +## [prometheus-4.0.63](https://github.com/truecharts/charts/compare/prometheus-4.0.62...prometheus-4.0.63) (2022-08-19) + +### Chore + +- update docker general non-major docker tags ([#3512](https://github.com/truecharts/charts/issues/3512)) + + + + ## [prometheus-4.0.62](https://github.com/truecharts/charts/compare/prometheus-4.0.61...prometheus-4.0.62) (2022-08-18) ### Chore @@ -88,12 +97,3 @@ ## [prometheus-4.0.52](https://github.com/truecharts/apps/compare/prometheus-4.0.51...prometheus-4.0.52) (2022-07-29) ### Chore - -- update docker general non-major ([#3339](https://github.com/truecharts/apps/issues/3339)) - - - - -## [prometheus-4.0.51](https://github.com/truecharts/apps/compare/prometheus-4.0.50...prometheus-4.0.51) (2022-07-28) - -### Chore diff --git a/stable/prometheus/4.0.62/Chart.lock b/stable/prometheus/4.0.63/Chart.lock similarity index 89% rename from stable/prometheus/4.0.62/Chart.lock rename to stable/prometheus/4.0.63/Chart.lock index 2d550b6cf35..8808f09eca2 100644 --- a/stable/prometheus/4.0.62/Chart.lock +++ b/stable/prometheus/4.0.63/Chart.lock @@ -9,4 +9,4 @@ dependencies: repository: https://charts.bitnami.com/bitnami version: 3.1.6 digest: sha256:d214e09ab00c7e5695f16cc5e8826867cf293e5add78ab5cd4303f7b3ea27bb7 -generated: "2022-08-18T08:58:40.370188014Z" +generated: "2022-08-19T05:53:45.324031727Z" diff --git a/stable/prometheus/4.0.62/Chart.yaml b/stable/prometheus/4.0.63/Chart.yaml similarity index 98% rename from stable/prometheus/4.0.62/Chart.yaml rename to stable/prometheus/4.0.63/Chart.yaml index 15f5d87bdf6..b1a5ad88ded 100644 --- a/stable/prometheus/4.0.62/Chart.yaml +++ b/stable/prometheus/4.0.63/Chart.yaml @@ -29,7 +29,7 @@ sources: - https://github.com/prometheus-community/helm-charts - https://github.com/prometheus-operator/kube-prometheus type: application -version: 4.0.62 +version: 4.0.63 annotations: truecharts.org/catagories: | - metrics diff --git a/stable/prometheus/4.0.62/README.md b/stable/prometheus/4.0.63/README.md similarity index 98% rename from stable/prometheus/4.0.62/README.md rename to stable/prometheus/4.0.63/README.md index 74efc0e6d66..4d7d354da09 100644 --- a/stable/prometheus/4.0.62/README.md +++ b/stable/prometheus/4.0.63/README.md @@ -1,6 +1,6 @@ # prometheus -![Version: 4.0.62](https://img.shields.io/badge/Version-4.0.62-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.63](https://img.shields.io/badge/Version-4.0.63-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.62/app-readme.md b/stable/prometheus/4.0.63/app-readme.md similarity index 100% rename from stable/prometheus/4.0.62/app-readme.md rename to stable/prometheus/4.0.63/app-readme.md diff --git a/stable/prometheus/4.0.63/charts/common-10.4.12.tgz b/stable/prometheus/4.0.63/charts/common-10.4.12.tgz new file mode 100644 index 0000000000000000000000000000000000000000..53119cc9dfd31ff30894408060bf6e834d285989 GIT binary patch literal 47336 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

$eKzTX)^bFJ?w>oNK&8p9JMLV>(_3$1 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.16.0-0" name: rsshub -version: 3.0.66 +version: 3.0.67 appVersion: "latest" description: RSSHub can generate RSS feeds from pretty much everything type: application diff --git a/stable/rsshub/3.0.66/README.md b/stable/rsshub/3.0.67/README.md similarity index 98% rename from stable/rsshub/3.0.66/README.md rename to stable/rsshub/3.0.67/README.md index e4bfa02a784..6d863b49156 100644 --- a/stable/rsshub/3.0.66/README.md +++ b/stable/rsshub/3.0.67/README.md @@ -1,6 +1,6 @@ # rsshub -![Version: 3.0.66](https://img.shields.io/badge/Version-3.0.66-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.67](https://img.shields.io/badge/Version-3.0.67-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.66/app-readme.md b/stable/rsshub/3.0.67/app-readme.md similarity index 100% rename from stable/rsshub/3.0.66/app-readme.md rename to stable/rsshub/3.0.67/app-readme.md diff --git a/stable/rsshub/3.0.67/charts/common-10.4.12.tgz b/stable/rsshub/3.0.67/charts/common-10.4.12.tgz new file mode 100644 index 0000000000000000000000000000000000000000..53119cc9dfd31ff30894408060bf6e834d285989 GIT binary patch literal 47336 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

$eKzTX)^bFJ?w>oNK&8p9JMLV>(_3$1 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.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: sabnzbd +sources: + - https://github.com/truecharts/charts/tree/master/charts/stable/sabnzbd + - https://sabnzbd.org/ +type: application +version: 11.0.29 +annotations: + truecharts.org/catagories: | + - media + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/stable/sabnzbd/11.0.29/README.md b/stable/sabnzbd/11.0.29/README.md new file mode 100644 index 00000000000..ed42f481c90 --- /dev/null +++ b/stable/sabnzbd/11.0.29/README.md @@ -0,0 +1,108 @@ +# sabnzbd + +![Version: 11.0.29](https://img.shields.io/badge/Version-11.0.29-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.6.1](https://img.shields.io/badge/AppVersion-3.6.1-informational?style=flat-square) + +Free and easy binary newsreader + +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: [sabnzbd](https://truecharts.org/docs/charts/stable/sabnzbd) + +**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.12 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this Chart on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Installing-an-App). + +### Helm + +To install the chart with the release name `sabnzbd` + +```console +helm repo add TrueCharts https://charts.truecharts.org +helm repo update +helm install sabnzbd TrueCharts/sabnzbd +``` + +## Uninstall + +### TrueNAS SCALE + +**Upgrading, Rolling Back and Uninstalling the Chart** + +To upgrade, rollback or delete this Chart from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Upgrade-rollback-delete-an-App). + +### Helm + +To uninstall the `sabnzbd` deployment + +```console +helm uninstall sabnzbd +``` + +## 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 command line + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install sabnzbd \ + --set env.TZ="America/New York" \ + TrueCharts/sabnzbd +``` + +#### 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 sabnzbd TrueCharts/sabnzbd -f values.yaml +``` + +#### Connecting to other charts + +If you need to connect this Chart to other Charts on TrueNAS SCALE, please refer to our [Linking Charts Internally](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/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/sabnzbd/11.0.29/app-readme.md b/stable/sabnzbd/11.0.29/app-readme.md new file mode 100644 index 00000000000..ef05cce1010 --- /dev/null +++ b/stable/sabnzbd/11.0.29/app-readme.md @@ -0,0 +1,8 @@ +Free and easy binary newsreader + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/docs/charts/stable/sabnzbd](https://truecharts.org/docs/charts/stable/sabnzbd) + +--- + +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/sabnzbd/11.0.29/charts/common-10.4.12.tgz b/stable/sabnzbd/11.0.29/charts/common-10.4.12.tgz new file mode 100644 index 0000000000000000000000000000000000000000..53119cc9dfd31ff30894408060bf6e834d285989 GIT binary patch literal 47336 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

$eKzTX)^bFJ?w>oNK&8p9JMLV>(_3$1 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

$eKzTX)^bFJ?w>oNK&8p9JMLV>(_3$1 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%0DAX|` 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

$eKzTX)^bFJ?w>oNK&8p9JMLV>(_3$1 zB#5&qQ70+Q#GoV-JRn~u_P#86t<){%Q>k>Eljy-FhrwalBm3KYiDS)Fi`l_^3gN`%se5fh;F#V~|%u>$=X z=LHs}i(+cdt=qbS8%hGt93Zs%S2PMKidbNnKJ>5El4-|a0uW>iE$$^_C4?h=ochDX z+e>{XwzDRPF*yD~aBoIqXKV2SMVPJMEh?%t>ya$_w4Is>#*RkocS~1n)-hf9iMvLU z3At0(RK&~f%_JlZdmSY)iZhf_oTwC3Cz>gM zs z{{Fr{|NFbU`-A8C{}j)%$*6e1n}GQgs+xFC0ads5Lr1GProc;`FWH1U3}4G6?xvEx zKLsZ;=D@`@#-mQgacl~8G^hY{HjCh;CsxBQG}%!OhGs2@qIo+T5e_*BlyMsr0dHruJqWC~^aP_!NOR(ufKrurWObv{}H(RZ`v`zq9HnVi$>C8h{|1aN?K~U)n8YZD-yCS zkaVx5gm56cli~HUI;IiLk`?rE=gfu{0p(&HndH&!(Wc8K1%&PZX9;`ZF+jiSxlo)5 z&i8`gl$SdOW}_?cu+?a~^0#BR&Wh-)Zp7VQTisAv-AGk4s=N`D!B1CL=LHFni%~5_ zgNn)POBW9@cihU-lgG^OPN6XtEFC;EdN7H=Mv+V9aBhN)%CU8rq9AoEfV?b;f||)B zrJX|qEfT8$%WoBch5GI3-}AoKwyj*L(5)5FmfbLv7=WrZU49Qh2mA&SF^3Wkc0|Jl zUcON*mIpf?vQuiW(JmXmfnPJi^`NWmXjw-Lwf{}-k;reN*WNefZTaE|1gN#zNk%SJ+0xunXIjQt9E-oi9BaFx;=ObkXel7t_=&_3qOy<` zi&MycMvMBwft$QD&~>%AaS(j%&8N2cU*Hw0Yoz10A(SNXDX1@Q6P|-jr!%g$*#tcw zx4X4!=ePLNUyrWEpfO?pfWQT5&6pf?U}Ux1owcbONCZ_U^4=K3u7JFQx}%X)8D$QO z!a2mTus#C0kf?hx6buQ(p!k2uckKU?00ixJTdt>-%Zn0t6>E!-+fKif$HsbbE|AK1 zsz`0)Rn}X4RLoTA!VkMB@tAc&y}qm^w%E& zTAs#k09u8pHHGc2H+S$*JwK26tX%)^;rBPsiuHecu(wxO|M#}H_nz1Pr+B3Q{{nG} z(HzNO$*$aV6q47u)dOJW#LBGp;}_+!>q1<;kXcWcz9(|{8f*wzIm;M7MkqZZ>B8}c zmtn`m8<>Ve;j9MV9C1P5U?(`xssc-wp`6C6XqQJ+-;sFEdiTvy@4m!ZLjc(M z3~&PQ=cD{9Yeva@dQ_0HV_$0B-;f~Ra&Q_18|HI~pdE*hj&8EKa+0~-m3JPQz&Uk= zL!&OP=-Nw-o8+6j_aHZrmJ`V~=e2KlK-Q~^$Dkf#JB1B9%IY1Lq-9B{3+eeK=I0WT z_^diU##7S&)VcDm6XM^!&JRS~Nf}(V|2rtffAj~t&-=em@~HR^qtwW24rCm3;fM!G zTBrIfnptPM04FN-)il4<$LdE6j37gii6vK8kZ9?#Op?mBIyu8t?mjCXbxPUYN8_jH z{uvy~J4H+9Rq{A&9q*i9$&lxF01`v(@W^XaySs`gcWeb^;ftl@f8Z?k9b67r&v|7v z2B))S`~ul%+oe+pptsa%qMT~2R0>bCtuPKQy=*(m}R3|L`yIB82o&41OHGDJ=&E|sRTy~qO@=umF9X1QxIS)%^-k&-MGzfm$Dx>4u)T;uX}#uRdw zd6-1Dwp`8fUn<9dEZlZBBfY{}0_&5K?q^lo+w3dHDUBhHL2xejGHnt<0l1qdIB*iP zRGmq!4N=m6$>e2AX;KK_zu5vW=gNOp>ibPahv%!qV01(%NG7xYAm5k}cgd z%#;w`?Jzd&s?;p%M7&AJtlt$nxni>9=}o_W^|GYO>Bot*QQh!@!TpblJU{<}Pb2-0 z-7f}kh5pwcl=Q#e_Wt&>{`VA*)&ER()6hvts>YpJ?N8?=_0= zs@mNzM>Br?+IEF~9%@``Fs}&sdY{5yGql>v?UO_(t8!oPSa(CMBr7x*A4XBT&^lps zXNYq;G3-Y#4K*rC`E5yK?_HPo4ZXdA#oJ{B0or_jdM*@_%=*|1AHX z;<56-KJDB3&R+wo+VyL`Rylsnw-s(*zgQEeuV2G=`L6Br1t5ee9N`#qjI?xwQIuzi zK0CR(K0JPRde&OQKWwS?$Mg<&uvfA3lUdy>cMe{L4VfFnY6(_$mrURm8XsZd7B>&efXk|3KsOz z^ta{pE%B7F{Bi@=^{$?OkWp1T;<>&~A)j7fYl}nYCYX# z^)5Xg->6>^b!Cxh9CM`>s*YHbU&}k5t(^4qfuI!CWIAJtX-K75p?a8p)KK|Te*e9^ z^5_8~vl_%=Egj-NhzsQ3`dPjH+u?jH|4)B^ce@n-v-@oSJ;_t&|8Xy#dSd^NX?iX5 zvD*JraW&P$`hTi4ok#Zn(6@TMVfZo*!sm|o;f71uleh>4|^6}6c2Lh z({^S4SVuhzOa7xD_*~0?T`m9b8T`}0|G!3_ZA{O|7#_MiPfPx931e;?1!eh1ZWo+h5w zC(1;a>2VJcsXZ`O< zo;vw&jsvNo2WAm~Hfu@2o{ll&fQ&2c>K05QSrb;AE)p_SIiJV4(dL2`%he`7G3S^b z$>P_|KcT^IJG{2N&+ebt$#j=JbTX&swdR|68p;1h&i}E$w_nWv(cgQ{|Mw(M>HOyd zZ2wk>$b9!#f2`X4)t^@E{d%REZ2fu_?w9Oijlgg7=JJ0ouiw2t{_yr>ja_3wy+7uL zv0$Nx+AG#nc>HbRnoS1L{tb@f%UjIDso&b0(~FZ|4&T0YTMOQw1x}HR_aClKuKQkz z{{EoT-|O@`y>5RHw19t4p1QA85wnIVKC5^V-2z*pawmR8-|At%2HqVcf04J3RFvx!u0JcFb7$i3 zRShw*s9(>eggSS8Ip`U&n=wQab#LF&aw%l&me5F11|{=1l+0ADg3{nF(AY?} zwSBTi%scp(Ln55O2RBqF_hxk16jBs*Y(Yawg^&8WgjpSLhc`^tM^cKv5c-a(*(BIO zl#THmC5W+eN=C9F??uyihxUqA9w(Zjk^c9%`9FGlgVO&0&hGR5-%s*9PX3Rg)!4pk zLXHOF=A|oc)`;wWSr^&;@%-%i@Wa(lrR(_Q;?hL$HWRw`uB6}78eTU4tvmXj9>A6J zf4?06yZ4;`;Ypr4|KBfW>>tDfs71y~x#4VpRD1VwwC?HOv;MlO@W=u(p09875j=cO zw;P}7dZ6)dIREeE0b1$*>6h+**x7x~|Met~UH|i$^#C5A%Bhq4fb8cgFOdDX!Vgp^ z*TfT4sIrbPXm{_R;0;o5?(GlCjgrfg^TUh7tM?b4$KWrnOX2kV>hOoRCzsbh93K6A za(3*MOvXHTb}yCPOMgiJ($A-F-(LQ5dUf=ZH^wqju-4VGBV8@NkLgkTE;|kVE<4qJ zmvSesPyXN0+YiSl$7d&3zr4Tr`SSYo{NqlEoyzbFwEx%lSv92HUV(Ovsj`}x{}6s0 z#6w4axt;X>Z9F>bJth55-tEx6{)tfhPqB8#=OjAJIFVP}J<9!GgL3|l{`T&3{*Nbl zwEl-#p8HfDVrKv{0Kq8Ekd#z%^_^O#04a$8v}^&0yyb%dK7|}WialUsWJ*uD$oHT0@D~ z{Ek$skE&tAx?4VQhHp#^XUA;2aaR>PslMz&Jhh!!r=tv`5{yeJT-`J35_Kj-baE>UPAg7TEYOTWJi=XzQvM2A*jL^kHc4j6a-labcaA~F| z)UE&b&-#-;tJeR1G5>piZ|C{`pQm}&TK{2e&fdL)Y5kfn)-jyiZP70z4|;&r+akQ? z8t$K8y!T38J`VW}tmi&$%B#Bn{cdY}(=1Mf#w=Ks#9)T#1m#y|tJT|Ck0KoM%}Qs! zyWeNL{+pYgo}lclGzJ^F)wNmPAS^5swaCFFAzVu3W*9o1{$PrS8S4}Wq|p7+!1&*n3{V9M<#DPg z)S!hTla*RCmm~|a7U9V&1RD}p-Zp4StW#dh^_(dH-rT$cpKnxir~AQh3n<(LUF4!_ zCR#m_D#yv2Kud~CLTfq~5YmKhI{U1&W0xF`;yOv`ZdKc>!%ZFSEj6HKQFKd14_FG- zGz&EL0r1nIcv9|2NO50%FM@jQ?0w(M5|Y+}n9wf#_>*?{5pp>HObvMwiMKX;;E7xXDI{ zCWs>z(kRHChQ=e#)*OskvvHU$8-m$As9)cH zE#cQ_u1xcSK&=>lDJ^H-3oEf!(W{zc%djjh#HcKrL`xcERgGsf*vcJQCZEKj+LteqbR9`AXZ$Kel`F4v zm~!Xs2$_qt0Vv&cRuG-;{|XjNz~xj@i$Q=thlui^y0Mp?3nYWjIu~e;g(Rqy=y(h| zIXbl{N)kBbEHSEucEyO=A2f^eun;{0^9u5-5zAW_zp4gd%6Xa(YYO?)OQG%rJjrkF z=mB%W-oO70+j`I5`lbBf0JbD)5W&sAVcm;o??;SEZn zq4#n%66zWQ>~2?@Ctvvtp-XiEkhd9>-U5(hvk{`IdVWoQsUM!!RKVzLb^9!5td&g_ zNme%n|Al?sb^c!+hN!}$@970z<^SCq6z>1)@9*@U^Z!1{BmKWWcwSyUMc~XGe(md3 zuHFzP?qNWnUA-#qf3=5K^HnMVKbW7_B_);_Q?Q&JLLq8Npo&|%qxaK08gSzAJt zkrxOkTxzjs`)&bUdj@$pecLo}ufufXZ!6;X_Uar?UJnIh<=WI2o6fPKL|`|jWZC=+ z8-l+D+D8!lz2NMqfrXZUIx&!%fzoKTmw`0cZGjwm} zl&*{71bEVjNkKe@4i_j#b~-A3$ZZ0g{t%P!ruIW8#1ZwsN{FxJ#TdDJaOs;H+< zFw{eG+d-d0lzO_QdQ)XGFR9e_F5s$EPW{nZ{l-UFIseoOn!*s-dAkWVWM()?p3PE6 zRicqnwT?4WRgRIGA}60y!4OjZZ5Ee7G5Ez1DZ#OnG^AgSjH}F-#7Pcl1(XT_)*m>q z%cNh0o=b=lj?TxXh`R9B$Mz1a;|lvmOyg82vrFlt&nP9&P{JIt71k|KVK%mF3wZ{g z8MHcFn{rcK{d@4yQVOlbK}#V$H1Cvn$yFTmrlu|?e+-wa4STg}L&Js3#9p{g*6O9p zE7_KcS84SUFQ3=1=k@D({c0?Ip4YGE_3Mwkem&*#_2qX-0afS!P3Pf*#Qy%NLH?Ki ze)0Uz?)KpM{O^-IYsdedn^XN<-TQMCLp*z&Xy9}n=C^@Vcy8TmFWPwmh~-Y(8kcPm z7N~XC`g7KszAw{xxV8)XVH~^~idfh-9A}YNGH3^dKuCjc*$ZsGEN!w#hrBm7W{yyA zPq@%(b+H^;?o+O0yW%;cYEQCh&ZQHfwrz?y#0jW!+SWT=oi6J7nykST#j_5ZcFmd3 zw%+O(f*XX=R>e~ObpGS!4&w?JxBYSVyYnmD$g!uZ+{2#@!w@m{jzlI8Q(Fa!SYq1m zZrIWVg3&J&bM!t5Q6Q5tIve+1P7WY1J3>xK4C92#^i@u@4#WTS8hG{U)sHx+31qUB zQWTm`)%|x5VU@ION6ZDen3=?61Y^N7o0S1YD&tE&iSplG-<@Jr ziH(8Dg!Fvv!?*L)>3?(tA4~yUrT^{jl=Q!yooD^;NuIUzKfx4_lIleO{x)*G2u#)t zAdozLWl)@56D+~qf`#Dj?hxEvgL?=LAwbZuxVyUscMHzqZh-*7-Q9KfxxC-4d#m>U z)_Lm8oSB~P9&NAq)^})({3@WuZ|{_%8~kj<*3Q&h@z^swFs%_?S{n=>i`+&1}k*mDs z!qMs+(}U7o)%i5UH(m*0Zl@gm3_^BCnCxJBH10bYEj zp?UOP3nqZdRJ5EX49#V6hu?WZ&&%l}ejGtf^UC7$Hi`HvY0Ik!Ud3lOdO>BNN!l`L2ezC_Ak%K|mi%PgXgeUdkOFmP`KLu25*7&3(j0 zT+aILP391Y;jYv1WJCP9EyS_+TGZG^wEX(Mv_(mm;dU>|=VOJ>`at22>kR759z8)r z67Aj2+2URM-Q?ROSpjnK#s$^sAbeWpe^rRJusIf`g#|&tlvH$@F%obk2^#Zz4nHep;HMQ|qN;?`q3Bt5ixPUoeL)v(0Ll z@l2jy&UElo;dH!gm?bLJ+^ID%N=G@8gS8WsOAjVWPmkK{vG`gH*4{fUF$_6)%Rat^ z*)~UH@F~B8-ot#+`FCuc7-#w7q0sqK=S}osG~U-NGinLk(`5Ob4 zIqn+C+^*Bk9p9ZB8=KgF&bSmC3%8;4gh*-*B7c!~n;afruGN)0P=zwx_#xNCP8sUp z{PBwDyulwKXe`&3yj&h(7NCzCztu20V->ZgNmQU4_+DLj{x_2~LFsmQ(#V>lHk&P7 z*UOSOTbuWf_Lmo2lZ~nu7J>y8R)`%IOygcDNPqCp25oooa+{`rpli!cH}hAEnuZ0Y z56ygo3b^GYdMeeCy!Yfv@D@wql#RNG)#3}?JA5;!-@VT2l+Wdg`BMeQe__J7C(;u# zB6W41He_h$oEc%)(x*K( zWR-~wAD-F8khco%ag{j0DW3-0g?s<~tbu24zf*3NpA>o(PXp;x2syoAOe0ktkv>Bf zx)NXGuF5{DQtqwUms&pt6(44 zVvr~qhB+3f>4NTr(iMRcy{j{CuUTfvG+sm=(82hHz2MQoF*%r8D3sD-Y$sU*MH;aN z#laa<&wBkL809=zLEzkMmNyM~JQoPsgoihzXoWi!e!mxci|jXCR0pI^b3I+`jdl;i z)+s`roi7OY0O+P5u#+TWM>WjZh9G85{cE1R2Ze}IJoz_4!LLRKD&2i8@MuBXNr1}- zx7bxh)j86jK%CE*`F+3LHOP!9ay4>dxl|Yx7zyr`YjhN;OFRSqw3E8NA3T6)%4({o zY;s)29dhwxQF}{&EmuAU7X3;Arn1!tBbCKiP_8aDrzDAY_2*(DbsFK!!pot=V3+xI z3&+CU#qg%6l>raM9&lTBvcYJH{`^md>B?c^w*%A~*FIprGo%GPo(EsSJ{>F5S8q^7 z>oXYBSKsiCf1xS;+x}z6mx8@3l7{g6S?#pSJBaY{b%Ot_pt2VA4lk}_Mbaad#Afb8 zT^j`Khhe~>f>zJrdT<=i<#3?aSo9&SV8RTRp204T0BW8zE@JPMB)x&_>`uflM$8* zTp#1Etg)NM{V*8i4CTHL!;44t3PkN7Jn{x{l37w}%xT9el-{9f&RBV|Eo1NW_aKLG zSR!+9NzI081**mD5)}zpe0QZA;-1i;Q5F^*M0bcL_?{d$%_gItt^AALzHv^76s{up z7c6dKuv9k3B=$Aw{wBe2eH|`0-Q^b;#a-Ut%x!cV_AUbS`pr^W^}n!my2;9~{NldcOPH4Vy|uMR4NN&08sA zJf>W~tnUuSi$N5fn zL{(GLKSjV)vufllQ7AGz@WFpmNY8X8Jr-Za*IX{`{h!|XoN}Syvn$s-RU0`+Y#+)%fvblvN+J$Bb7!n281Lr2RY|P16cr+EI$Q~z`=D1pw*q6tRD*B`pI2h-K7;5Ig( zDC@$7^8Fy&1I)>9#_8--!!p$Oxu|x&+iT{wsSK+zDfJ8UCLf*yMdl zRU_`<-QMWD6r3nf&-iZF3Ss^AI67mZ^fx**j_^V(o1g5r@b4>z%}Rp2K>s6k_@W1e z&ek_IZ!f0>+R&c~!wf~8hTZs_1ZnM2wTO%wqjO`^Y!Wh4u$a$_*dpP@2H}wKAyW0M zOA@>4kK4{A?4iTq8>~ILDbZZAJTeoINS6p?>umJyYIJz6C}~_$*fp@Ilkwsi6Km{h z@Mt(G>ZGXurk`AOBiAG+m7-Umre~?I?Rn#?l*b)-kCLf2XY|$FlFf7q!agMw{hsVG z%s&z;8tFI5A%lag&NZA&!(ER%K{@yhFN+(Q^D9X_XL@gP1~H5f)G>*oaED(RdIH5T=;?2cn?DW3C0raEVa48i=fj>x~bP9F>9%_BZB z#0J&I)`WKAn#>og$)Jww>q+cSQZ=EbOl?%x%44^PgUx?&dedx z-n0bj=M+)wr_`3C7WE~6HnInK*$9Z75Y`^bzLPYkEYtKTUSSc?75>B`LrKQ|CCC`T zLYbi~Gp(1aaO7=x3o5ErXBG^WihNXH3t1K_%2ySy$QAw<&TF|H-T%=Clr@Cn<}f!| zmvEfJnvYaNwb+$AA^xw=Qp5{Ms}|+K(U{pOV-KU6L#k8jP^aFrt&J_JLW(ncdnvJz zGezR3AcZ?lk8mO_o5&~dTHL+w&vo^+Z#CjMi8vKQYx`f%plt{}!qW8N3SmR|lQTbw*H6QvJ@yvb@&XXg z&YJA`vfW=R{e!_Gos<9Wj}__qWLBDp zFSMltamBE_@0H}8JN6c|FG?9g@DSW}iT^oBjs3CS#!y|d?GuQ$oX!}=*&%fhYt6e| zA^DUODu2?oH{HKD_N4Vg4~0g|IUtSShEmaSH6OuncFLJT>9Tf{zXy3Q%ta_9#NOL< z|0S0$!uAu-l3j`}b=a)J>xjVGShN3Byx}Z-LUKT=FFihlI~=I#B@^=*xZ3ivqZMC+_+{_*(A6%+JRn^fQm0I4&kZkam6>A1K+3 zXFtxDt8E+Qac<+q?V#;KqHSZ~K^zj>xZdBNb1fR^k$%DEuM_m4rmYIEP|S{iQ0$c= z^4Hb79b&q27WHW+p}P$Jp`0-Cf#Mg;agOQXhU=SWY6FC?7+FOLrnQH&bIv!8(9ZIq zNWeV0V2b(p)mNOEi4v#XEs>xdOkVflaJPULBu3$>s)?I4y3JLLEGtK2o-LWpu+w(G z6GVkgomuMS;Nk^%{I1Tk%IIwIYEW0eZ@@%n|_Oxg7YXF{$~!8ApN1o z0+Wn+VV#by^ZPm>=0MS?W#h<1WDNzw_jCFFhR2zBRTJ&H?$%c9Cd{nOX0>i|{xyKyG}$Ugz*HxGOM4Ik9odh3Z*S25?wq+vO}JbCUm()|o5$U;InG zK`Dd#aIB|qb;E$wGfy0&Qe>2~xjY)>c(_X+1>HVqu2Hfz&YEneOK|5LYywN26xXFv ze<}Fe##hNCoZofVSeLi}G0p@k_rTvVKbb&Fp>IsgADmDyzh^7}O0>3x>Qa`!qStLt zMt?yOlXDB*b4Nyh4T{#r)SG~rOk6;YLE#;yZdOxx63nWh9-_2${*XC>EKOhYRUx~u znuaC9b)=MOp~q>QP`c7Y?n`Ya0k&1TOLFjtSRj3n#}^l7(4AVSNIQ#gen-LjE22PK z@~keySmQR%z%23S!^FS}ms+vTeHN_Dru72UxgC81R~F?|EiaM4!eovK6#RvWx^9xN zd#;$sPaGd6o&qR^;JcQ^Lo&+{hkJ~zb$db$2(#6=80$p!i@{=Q_+t}MAWx_O4xHZ7@!-pY?&3jMTH4!mOu#RC z|E}fDuC7IEW5X0v-)Fo`Kad8x z;QGos2%m>yFPi3kL-4zeJjf%o8@()3FYKLr<#3p8m>7vkF5dJ0luu0e>jTkufj~_O z+u1vgp{>c}FX;1k(8IH%Kht7ez&Ee&KmEM#cZ^Zu`L$KxvXzPR$K{nzurb&+z+Le{ zc&qpd@BCsY6EVoTzzj06!a>xW1b`rw_Skej`u6VWf8)Z%F!CBdA;AuzPePqSKS2vH zyAd=4=0l|nTLQ`UUhZgN!xyU4HDX4&M%kp@hJA_zO?n@iUYZD2f71J~HV=l;7S0G? zEh0*I1Shd&5sL)e-?G&hy$+&8b~m#-JSq-%Ueian-~Ds@A(gqq zz}xGUc_{vwgMeYzbB9xY$l<_Mx|TjX&YUO+c#NB^+~^4|#A^cO1Z`pr)Q>51OORxD zwPj!U_ZPMFng(}g{L|1PTAoIi4u3PUut6*Ph$Q`SQJKFdLOY|v7VWjc5g9YAf2}KM zYmgnlayzh{<;646G;e4Mty_;Qd#@hxsT3{1Pk^>Xfj@gnez$;WBj_Fhd-Cj@^e+Vi zbEHKQ&{@sGH8lQ%A-eQUdX!zledNqwljUKR!fr}463a#M*QHBL0Bl5riTzV+=#BiG zh~MOHdRV8fpFtQ8FraT2G$JyQ-OQ{^+iM$7X-_3){y%>-jW4v>!FUpabb4v(^>eEH z{4j=f@x%E)(T1vu#@)YO-nb88cXi`m;`nq4|NB5f;=kcHSBFy^99gi3`Dmtf`Hv}{ z&V|CKYlXZj_+K(+@D+;8>0+zzpTzHysso+x-`9OB2+hM}9C;^L8q^TH^Dov;sBI{k ziilPGCCL6*P<|IAWY1}%Ht(p0N*Ja=1*;dWj*7^7LnVRHVNwJT)PL5Fl_kxjm9xWG ze*}x$I01wXh@1SyyKkhg?fdJfN`4T++3#BbS>}z68~td?)P9>Ld|SR; z#&U1_+YCI!k+}um#BClJaL?oUG}tT%M$FF&>*3?PBjsk{c8hcd0hPw^}5%Z@GtvPxqCtD|yg&z?~F|9gV{Qjr6 zc-81JpgLY^0_|`Sc;MzX?}{S1!h$?$sXkGv)Qp@OOlfun z+$RI2>arStw0`X3@5z#hG?Ho5C}_lqg=1#FtBjm|nV`lLpT8=~^l%h$+O+JEX?L)G zwvuQ>HN3IsxD^wSobpwNb@9ABHtS%LW)@I~nhS{!W-am?UIh3-MH42iwk*JTiN4q#2T&WeU^2t7|{1n;pCK(((JcGy;^F z?!qY2rk>r2)@L{|aH_pWXi*Mp*lS@~F6o7me^}#2yN!H|%UNGnJ%ZM*_1-`?v_zPo zQnB^jm_$kN178CB_dDE=Ppj8Flo)d*+Brtg-HjYM{}nMUaQuHY0E5q51R7u@=Lf$I z(H~q`Gs7#*jlH`=J0VK^nm*df5Va91bak?dWR%n6VvD8IjYNQVwY*xj`WM8=$j;6~ z@Fl(;SxBuorM6)t12Y8&C4ER5M zDCM@B7rn`LHRcs5-(PcuE7jlOH6AzrJJR#Z>u@Y|GwuLne9L6H)4%6J!yh@yh?^{I zcc$g{Bxx^@bw0gkuh6WXe`mIZ7h%PLM43<>qORnyghW=7M$@Uk9#u@kyY`LEwf3|H z-3V9S`Ow(0rH~vAhVP@>aDvA{2paIQKttEdYWze>O}D>#+X7A}S26U8Gjgjh*WXn@ z9ywlBhO*9A8pE@|)*8=Ph0#I_SI+9+ATGu``v*zZG3Z06xE4TRhEwv;Mr_f4Ie07v za?aU%@@lm%hF%yrdo;m*J_LgPt0-zWRxUoByfNKI9(Uu8;inUkFN+Cb7igi3p*|}~ zKIujJ#$`E`(PKgSh2Q8Yamz~G_CukU?qqqZDYNRooAl8cQdL@b&RzLx7L-#){QAD)4g@}Dr!xrjQ1AjkAe^|6~Sl; z=kC>ds1xO?xk4mzLr(z9b)a))gFJZ~@My{Vzr=XwyXTF+gf?o(gn_3qo36Ug-UvMg z^G_$VayhBUT}Bp!gg%5#1~>Ca)0Mnf({9ieI*x5O;sON^Q zW)#IXEDy>7rX+D^C}^Rrqr!T9w|5P6x~skO5N^-u((rYQP=84&6a28Ar(tS$x5^oZ z`Y?t0voAej)?mstCHItHuv$O<2|`vFjI!pxnb~EnvXpMCL?U4-1J@Naw;hWo}fCict2E0w`^&n>n)Q#J@ zD@dq&{~$240NI+>VAAO6JeW}05MZ{ly4qY3iDAmhubGzCr z5^=|IA=k#6eOiVO&Pu|LSP>N)k%l)vEs?(Or3O;PR1`x+4RscE!^U5W(y~2h8t$@n zbxIVd>jD>k*c(BKgeKZ<9P~G zPH!yXY~_L$Ei(Umqao&418+lEA=Y*f?CP$hH4G{o8x^;is)7PNjiR1xNY_Y=zuEpV zz!F3Au>jfiD>||lu5Sjy5m)v{oe183FC4P*B6giG(%pgMGvR#&JrwLjF;kS5LebJK z1)AoA!K+^wk@q1m@J!?`>h4P=bE#Q_#&D@6MRf|oIJ+~017sp-e7(+QO)c*WW+LU; z>p_@G=%Eu99;uT(PPG&oH(D2(A4jmTJ=HGPI&&;>1WaFV5co!d)uBls3UidsEeTK^ zDN6`F`W@5j7na_-71sVFiI~9~EJPDoOLhM=DPli<-~!ciV-g_}KROw(#gZaAeyL`! zKFN;J5r9$?hwONcdR?Zv-R}Hf z)d?#dkwg|;?KQ;slc_0(=jUdteBHVRrWzEw3}V^>kaNhVEg|@tgxaSc3Z%VZPM^F) z1~0#=e9Bf1&A%M+4n(Rv`NG4dli&`Yr=y$Ducsq}>7$dA>MWa@p`a4}`p}kuZ$?dD z3*Ta!;egT_D=r%U1>Kj2AARitUimKu8EQI_GFCcwy9eT-nWvb)CM>>f>64AI8D&N> z=XUPp+6?+{HkMvXs{x*ay`GBX%iqe!ZJNLwefD|TEAJ(6f%zlqZNeF34FE|Z_)j1| z)3fR9Qszp(7%W*k?6%aF*Vc8d+A@%e>|V9b{B5?4CQf2gokk0Is7ABe@Pm`{!~L({2HBR+8=;wQ1*!7| zlaIQ#b|~f!pI87OdXO8pVDZ^)GRe|-#_H4GVu7Ueh4H51ZzpCoSgJ=&WHe8a5Mq0| zavp;*kxLG3T*v0Ut9>S#zhU&^;&8Q+5+HABn&jG-pQxZo^%$-)%B3r}33&Co_dU2d z4aobFXeel73B)P^UUYBbC3LSazT{ls@r;4G_^)b^g3s`fozVRz#y;QZPz&YtqLgWd z#78xX8j{ZA=!y-)a?>4K3!uD;G|n10yN!YZP+)ky!=uH~GO7r&k_RhyR2A{k_(k(? z|8?e6dreYF_uH>NX`TC1BXM{z4T%=KlH?B_l?!Vy8apmLO5`tc72$1iM;6?dfMGv# zOG}~UJis^c;N}MS5|jS&2!fSv26WjZZg!!0CWTif&^*M$hid>H1#1^jFcXG|!5y)s zRR<2iW`Bm}#S9JK02QrkTY&zDjx>P2mjE61>3!{Q?Iz?~i-JkkK#NLQRkI}o2XTfQ zIIrHUjUWr+5>kc|^XC_JhZ_Xc%;|a1)Sh zUO{5k9NsQ=p-r39s`HLdk-P58}RCpAMi$lo}L2cn3C4}5qRv1GEL0fF&0XHz?1hOIqX9R$A`Z` zuT55u00r1g$t0i(&M?3??BpwD3;d+?I;;c!S`KM{)ije>{S}z{#f~r!)gI}ABdmIb ze7SZffuBW>;!Y?0|_ir4%P>p7DaXJ060=c!wt9l~?JXQT?n zvWRKXTxIE4zq=mX0T)t<>%yPGDp-P(d@jmAu-Z!Gb0oP=>6zY{SV5Ef&JBWB;S7$d z2Rr%I_ab7#TN@edHDnbTFGUSsU7E;sBF}!Fiw(SS(+^}WJ1(H-x4@_AjLa8s5d@N_ zcH{d43T~C!CaV!cQa`#&t10!g3p4F-zZ4Y(VSWu;A)jDxo%7Dz5MFlmmIYk`$MmUW zbOP#~a`k-y?0$9qqij+q+n;swt6bAO9y>@fop8g+>DJvo*C94Jt((Jrf%`qzZ!VJD zNs<%IcG%&ZafQagigsn**=%5j@k+gJ5_oio9}(+tFlh6oC3NGjM;jJq)^LNpxG-hI z6C-QBs7N#r$WzN#ne;u#&LIiaemDe;$wXSTszwIfGtZMn~))wtESeHOpO+}exG zg>9jbkNIQNOVfH`!$lM)nhA?yU#xh_ORkK#6}jOon`ob0mKgyNn+;!x-hza(e-!+E z@1xAxXmz8vQ)Y@zIes*L{EMX8$@mfgr4O!`&5_BL{7Q@ z;wa1ei|}n#%lAn=@kyfk!!(jOlS2qUf1$kQPHruZAtcacJcTYQ79UbiGU@PtUTyu@e zsvr2ajv=lm&6o71^0U%UC(Ya9c<*aX>5)mm6qPS*YIu6S2d-9iQy^IOnINkWa77uZjz5|w*t8R!^GXqGCtdVih6tE{YbBv6V%CdgIWTJub^wM|Bh}BZ@Mkszxs^+1+(-kMROdPE6JXwr^M^W zWPdc#3g zK+5%j>-&4r*i;n73rgf4RiMS3%sX&41iJD5lP|X^_|Ep_*T}jKbB_?N%R3Lez*jN7P;19->rGd`;`S!! z*M>7AQ|q*%6lcYcRb?SIrMVFQ<+i;uTAtDG&pqzz&lcw8K=eq=ucc*=5!B#!9KZMO zAlb)QF2QHaU1bDv5;6eJ`};fcyj{i@Gs&hp zi8NU7f{7+Mcnn-Tu=?N%TQkCaPz^Lqc!|RZDo4YQ+sfyZqwI*+bGn z;AIyJFzrJ;0^rfM{F95b0kW=u0`BbS`|CFyY1V66(7G%_nU`h}Ld^hu2Y!HL?Gfx< zQaL8xatSeI(N;oopsY8FRgRtdncJC}+tEcS1sCSM(Dw8lPa0s|t;UCQmXG*j6fiG` z<_WtzT)oZTevE(w4@v*RB+ps3@Wq?*eMXHeX>d|^W?_{{vL3{FT1!zFS}-Yn^;3&^O`F?4NT<0qS@G}K1@m*AfCb)032~)f4%c}YLVEG= z;&lTp46wQgVP-Q^)SKL8vhR%=uzrkzRNp5(w^X3&Xc9!eRt`~_P&l#vlQGDH%MD{- z>J$2V^Fn|fw%Ml0?Iq=(Peg~z0IN^PJPv@oK?*?WgXyPyp{Z6aBjcMj*|suKW-g;r zc~3OspO=`BwUkf_-&!WJ$MPf~ndX~UTx*>7+ldprfLh^<)|bb($LH)u>`uFynNz06 z3t7u>IVDq8^o4G^IkA{peYfbCNBsFnf7r;SSe=uLo7hs-Fb-`!Jh?YXh+ zn`R^Q!VGuI#tT5-G`=Tyy~lWQZU+Nr zvv%Gv>hy9)UEl8vfYERf-FvD9!$M|8oxwQ`rvLcCkRP7#7JmN{w^Ctowfwc>XM?53 zzoFp{j95!D!X(3ZDt%KwAICHEYvQ8p9V$(ihLLFzp!`EDpAp5=b+^szcb5F%7WHK@wR`O`P=Rn9 z=-wRtK%mnZqm1-=N#Nuc-uSqPD2@>j=>BKv$wXgjWtqG0PP29X}(j{fRy1>NDRzuB`*Z4d%b> zxVVd3zdLnDSZiHR=gAMP7!tq=9BWMArn){eY&`*JJDh)&wD?C{*dhOrt59h?iGO7y z?W;q6=Ayo9t;T4+h_!QVKHgQv?i@Eay$WiPM<#|C3u>avnawBOmW_;UR)c4fn+ z2(T#2oe}Zql%xe`r7lTUHyO;PFk;hdweM6YR}nOux@ATM^@lkm@*i4i15VK8Cb-8Z zN)#E0v$IcX->LA8a8ZOH>ml;g&>D50sk*LaEE|JJY&uj?3so2t3TC*A?P`gSuXKCp zPXymLRyCgED&zQ@Bi}X;vBG!&~V0O2AGf3Z}h?b5Bz6)IuWjb$$rKTBZx;)1>88#p8$~T6B zPg2i8F7!Sx7Ybx-wo`ras{zSXIGgy9;?D1!)v*o@IcUE6*^Kd5J#`~^-krn#axmCL zxTk#3%+e1JF@_VZ9eY{S{~}IZkiY1qKnfwO_QMMEdV+T9G9ot|OI}r*rgne!+%P_e zX`y253U-@k#?7Sij!5Js*rOd3YJg$#TV9#}{pExK)h=Q8ivifV6afga5}yWYgn3t2UNGtJ*9;r)_%qZ#0t@yxNCSqFdOnv&9d zV(MM?P!H+0se{TTX}(Uo-oN~(kzEEYQPzbuLbMeR**a?RNS4fRj1@ea36||)gPhHf zsmW>i#xKMs`pQj#ECI~7fWZr`#chb_ID9%3Z)ANGtUMRuU@f2nehVJn^u>yY5YgWc+e(lC_P|Fv|Uw zuiL!KD|CPKlsB$b36Rr4Ts@$r2dUTK`=__A@7ueZPl~DG2X|ouVFj)AoRw9?2;0PR zqFTGcwoHEwU|K4)Kb8>in+CFELlfdRtUL1FNnQy?v@}4X=X|7X?trkj;7zQzs8ox_EckR>-Ip(%QO~-T;yjEkzJy`^+U7Wm?rZiA~ zo<+cI_iP#v8Pz%g!1P;RW2U6S7Z;Cz{6mUHSWWFM6^4V;iOKzLeW*r2US*BT8{X15p&Ja`gUf%M(mi>{r& zL&rq`vD?n8Zs=l?$ntY7nKk9Ru?ylc7@daI!u#eXYZ8RR9h^s8t)?2LyBg60t93>L zYhIJTQS9T=sk;%ealK_+1n7(w0S1ZG?L=D?he8Bt_#eU*;R&me*QY|8BSjZXKhKFv zxukovsUDDTge{4!?+2fUNX8P+0%y|Nh(R$(a}wl4qz0v1_ai>1k1V4TN8F z{DcZ4j6THGM7LleF%`DlRU;IFAk{#zeS#s&xXwH=NK*IV&E_@Nt{y5}<$HB%1mxt2iTO-WK%kriaDDh)0>w~tMUrZ&JgR|nBT;03fbUkon*83Fyc9gn9Y znQ#Ul?VUcVnd)`|&7KF}^_{+9%J}q#%jj_gDqP3z4@vOpt-0+y8AQo+OaP&Gt7iBzcgZ1*seP=@SspF_Bc86 zrJtKeJTsBkhr)Ewn!Dm*7(LW8-cOSs*wOagUq;=XCE0TJCKy2B>oS8()Ks0MKFU3uJ@di{)A@ z={4OyagXeLX_7s{G81Ecy?r!)DQBx}R&T`*N=Rs-igU{jt7z`O>um~{>T z=)EFOz`GBXc?MP9N)@Jv$L6lDk!By+ZcFrk%4}jJxm6mu#9lWxDH2x$!RwX}Exk}R zTZr&`=eGuEm$3>YIAwQ6e|PYLdLmj-{qQ}KQ0M~nloP$<=WxLQ_m?~cGeJ`;<$kJ) zeX_l}01w{PJrj(TM_qj+8?uEujnh925@l#sL@7#RowVso`CaYs8hRJ zX=$vR%wCu{Bcq=f@SCuRT7HJu!fz#|^`f0qk7#)7b1wuAS?}f9I$9(e{$D**F7~af z00hoOffog`ZfI@1TA@Fyiwbhxe6bURAgM1I%@?0ff5busFSVgnIZ;ZAoKcaA$V3{C z7VVI5@!MWXpD6mD{MFcM;Y$?hiHRtNZ;?@kp9Sv~{GTV-EE<@RpJ^<p=@lqC6aC^Fxqvsf-WSr&z@q8mJe`M12Jx=btPhx)@LVpv7==cb-<-e`~M zYoc`-h7Vs@i7-!2r#OF&s9`&zoA|C{|EO8>IFdrhO`9E^clboRsvq#yvuR++grHjJ z&ve`Ul|IY6ZYd;I|F4@~4BujU^v35o-bg*fJ!^>EZ5E(3NMevtQQyy7N3v9;l!;Oq zd3Ppl@Yqh^_--~3CHP=$&#!-hym9y&jIwtwK>O)*sq7Qa&*Q#`J-;M{=;mANaFg@`)sj==v{In2CWjlbcBLpM&t`EJg4%Ua3Xy9rGfez^OsqL z4QIL6H%z~mc=HgHpr)W1CnE7q^&&1U$Ts{t#(VUjCrE;#xXPbI8wE1>YM8&+)#Mhy zR~bIWcCmeu&r-Ypp{7Mv>dL`@IbysH;QHs8=1RfI%c-5mS3X$9 z0k&!bqB{j~1eu9XJe61t9Xw_PQnu@z*dsEKIX_Iyz5pf<{NkP1wJATWInwNICHK@qp$27Ms|t6tG?g_EkHt z{D6nIYYn(|_1O|E@7an?WGJ<<^JDRc58pMcp;QnD$zIwVhEe1b3`L;5o1Om7 zsj-lrLti|k61(6>f-7^okl?UOLnor!H&hM<}6xp)vHoVd!dW;$7ZZ$zLHIy*wmE{zR-gE+p!TxNN_6Z|0bD zE}|!YA$A~tQvUw1OCzqnA`GdDJ5ow#&~a&%73O5Yik?n| z?y0s}6XlGN{ZGxlCdT|SOQeE2XCLv%hM}3*rR5y3^kWf@2uAo8%%7pE3=zvcy#RS7 zmPSFR_lJT$!VF?8krIgCU#-Lc%YqSB_J<#&yf?RVW?VlxTI319V{O@%kF)x( zZ~@H+>~$qmf~E4Ad2iq-_@e@11J(??d$uS&3em5RxyRiRo2&zr*IQ zV^_6X!yZo;7MJ$QAym>5F_(AczO;!4S2yKkAb8btSuVW0v52J>4Ch1Z5zjH}$kH#(E?e$$9sv${S8| z$I@BioOPtMfdVab`sc(5c_AT#bexUsF;-Y>QFF`vyD&L@BSq&vcBzwHhC>N+lf_LF%^>7x6dz~9d{ zo|m@7GZiU!565Q6d#GlL6lUf@Bhya}_7?`eRN_0!CXDN89@alTQD&ExfsD@qX?yQK zy^e<-s!}EuGcM8i;YhrtC% z)k%S#ZakKh^M^!1bf3*}O}}SyQ9h#vz^YIHe6K|!>~;DAtZmIq02xAWxe5H%mO

3^;c&fW>U~%vv?YjUu1i!ex}1N1iNbBjtT+B}PZaH+)f+l+`;_Q*5R_D8%koF2 z;|*$b75VX0i)&8)39vj=QG5bkUgPM!TZ8BJfRN6py3fyxImis8&NW&v*VKRYpp})l zjt_(TT&9zzQLAaSyi2v4+M}Q|Y|FiUKEi8+cmxS{>L#P_x`?k=zI6ox6AjZ=TPb9Z z*OzswN_cJm${C;6v}O2`Wqf0FWY@{?G(K{&6Wi^W-_x@W-)LXJxv)V=Xz@q_4>px} zd8IeM`itc@>N8KX@6!TJq6}qwl8_$o>OJs%1@04ZBqsJ&qaR8z-@%XaXQpi0WDdALeu=_#WSvm zlh&y@&{gGc49z>pe9D_U`VZ6IWqbmKn1f)*XBY%Dt-upJj<-+XGx_;H#vI_TPGE`j`~mcKQAR<6 zr`8t#$W<}Ew6ycgAfkE+=j0ot=mdFdRa5R7Ru=kOkru$LOX)CRcf3^v`n?Q_pez3D+Hz?nL)YZ^!WO2hW~813wjB{OkFO z(l|XmK3-zF+RT}ez}s_)1n60Ri!EPy)n7AR&lI)L+B@C5im}Tl|rIOp`4WXAArh^a334c;x~|0YD#P zjH=MEbh9p>pBHfrBt z7RrY<%7>jPcMZyim6Xe|I|~AJlg`B&F1g(-Yx8g6I+SD8jF^0^hBag5+BkMQbL8=Fp7HfIKx&b?-&V0k=i$MSe~c-Vcm&n$h? zjEIUZIVpC@Oz#oL8229`7FE@7gsI?uIBCcIaAF_u6AN!AU3r@nc{{1(t((AxK>#*M z$ZbKgq2QO0IsYkHBLL$V1O%mAh==$F0o7Sv%hlo4td5DLvzm=ZMQ4qRoi))q%bk`w zYe5p#*6Hrdn=xwDfdt69Qsw^rO)&04Y9 zH=WHJ!@ALp8+Y8TFI(CtZk>H%Gfz5MClsZ$?+rXt_<0Y&w9|3|Icx$6L@$V+D%tW4 zPJ(Y>f|yi+;!a{b-!RjU$=~^A$+0;n%~YYn=A1Z(hD=Y;n%pArfg~S<8%>l`3zOwW zlw@XnOBn4zcQyd^b7VI~WB3}f)SVuIp zxwDRNo$8JdbXW9*c+t5lG+$Fds_P5pW?%mk%n^>3;4UH2GTh1yp@8`{(yU>VMv6zw zca#<=L6MJAUinpYUV_#TM-0wc9H*kMoOXK8aV&aIFlOtkPQsG6bdA2s#pSR+Jn14X z-B~+D#J;cLxk_G&7oB-_44z$`=dm$Ae3B%{r)*LP@c>pNrKafMd{3GgTp8b!Q4QZ! z5<x;@?y<%hrM@mCauZS<2i%W|}}8Avq5wty~=Ty|q6kws|n= zJP#(uJeU;c!O-lFvovK(`}&^%W?Q5@v?G}HS`NNvAN+}J@F$%If2{jQ0+PyAs+W+)=HqW z?`wFrD8F%M?u9wz7ZO_cc6Ql-Rhl5*r(WZCp@dPB$fXGHGS> zvhQnnwg|6rXW=zAgx9zryt?^0?#ZN;h0DHg8t`yW#x2*)xNhB8rW^F9AvK z&(=FSg6C1oIW(FbRtn;XYgY_IfFnZjVk`X@(Xs6m&&k-Xct(|BIq{-%#}*aONQ=x3 zHEX#pCupw>8i51%*qYcu$5c7wXXBiV9+F{C8DC zBSQ&|G$o|-ujaUjAAflB{^G^O+0XAUt}ecL{qpA*FW+CBzq~pHy<38Vo{UIE1iZR@ z2XG2tn&KsM(s+-!Eti^W7uO@3iW+rRQ6ob|jWiYIcHC`przh=J!StkV68>1O`ZKH)W1SYURhGB1WB6glDLT zk)|RF{AiL}5zQD-%%m~$@dEptlk;7Scs7yjbr#8=`22D~RM_dy&j}9=CIFr(?T=>)FJx*I5jEh8Xq=V%VK^<9XDQ=TRNc7D4NE z7POurXuX1IAYMj}2 zp>g&-_n^>69$52X4Cgq+6bt>w5OJ_h%L(Y%t(&23(G5Ecco8F-pQM zoA8?$ppP_xeV8n>YY(>#Z7XTmc_q1}4sohGL|aMM*Z+M4 zuC8BPyy0DNarrG=V>U4g^PuILa_rj))%%a)MMt(BJ+nwaGTE*q#i`8N5idHEQnXMV zEpf-~8vL7_vCG24~r>9ifs(`gOQ7Gu`wY|J`_G3ykJ z*~UCq#1{BZhq4daiQmc8E`A-GaqDz8ZXH8!I|bv`nN{rahGfaTE^!qbV{y`w#Yr8D z7PabhR;!MoR-J-cb-D!&CZm=-kLq}~XjP}PR&@*|;uN%M$8h1KUH%UHzJ_Ou2I-u; zF&hl02G3H1F!j+N&Z-orQjp9$i!`_z+9^WV+7iG?x?h9gW=fVd7|^&ag{qQ$Jv=S-pLua z+yNcicR(5Qw*KsB5X=U{kHocQgoQgP~{eJkogX81)!W z+RdTyq)t{;8vyJ@XP$=!&z{cnNksrAyAFIVYR)p@nVoXE;B;t81n zUhp(c3jQ~k`(TrVe@*$SSBKSb^uOFVva(Zk3`xAW*I9$9!P1G&l65npv?0ugucfLV zJ2hh3wV8BoXOqq~OgdLL=^Rr`(_{-aJkJh-6vd*vN@m?I6S9f<00t;VQGgU=|u*U({^F& z(bO8Yo>iaX7BB9#6wT>5>cnU}^KfK4-NY%-O{K!`8e!!FNjxblG zkY2GFklhZwXT4%L60UAU@(^1!IX2U-vt?%(b~BTV;^4FwKaVdGA5eN&I^AY~cCtTN zL&NmcEl;O`<=I`LSs1igoSh9$L!sy9rrY@lp7Qjad?W?NaBvPFsx}x2t^T>Y2V`kY2n|0j?n+=Sx*GTUQ z)3p#O)6$wy4q%9*8)S9=Y(cB;F{>iIo=&edVo{u%-buSeJMYArXg9O$SIo-lTxzI_Yp%lMbG_?vQ+o|8qhklJSztj5R zQ>o~D+Uoh}`SnsO7zLpmP^nUQAGAC*=Gjk;*-ij=J^(x^W(Q3z6Ce{$x<6jtfG*~) z$-6rA>kL)xWzj7ySGGOTVq&qUCSC2RNztB~6zwTsiz%%=y51D?8IU{O}bi7#sU3F!FsZnATk(ic{I+mAC0q}x$k`B-Z*hT zDM(@0UU(rzRPEi0?VDSEx2qpQyv}O>i?S}a{$HiYX?Y&sv!BPe9mnr{8h>1L!Y2hu zto4H?Zk4~HwzopKwYe>0i%UK3>Qax3F7>$JQdb%2q*^dH@Evj_f zRh1e=CdLI-YEMfw2G(ggOPrcnGHh37k9}{(ZbfDU-+SPf7y$9DIE^aL^x*8uH z-?^xTQPW~v(DK@DYG%c!go{sEz6h=7C;>4^=`um-FCj<>p&*87dPkDL#zVCt?_8w9 zs8KO4DDtLTZo_FiOJz8&Svsu&lPenn^SlX5|TDJBsN0SqxrQzZ00 z4;1 zV#nwmA<7ec=czj%r}m6orqPc6I12(b{4(so_!Jc}UlSO7149`3C;?}z zUnKkOOu(T%QtH_fo4n46O`eh1njowK4mBP+_&v!a}u8xiIr{(GF8B&WP^grid20=z^iWj!>R zdeg;dB6_3c4&<)kgu%P|-o>5Q5M={G6LBDYLi>ibH($^VRBn;6u4repejNyMk_#6mZv2VNGYUfu?fQzQR`?_8~k3!YeINS*BFhV zJ{sm;^f`&Q0Dt5G5^2Z}O8cOc0DpzUK$O(C#F0H)?v&RtcZ#<(7oJd|@0+%;14A`084dr+>^XzV6!eok^7Q&;U34-eoM+gLSut~xcz@;^%+p}aud0jK2 zjAVRI%ZQR(RFh$|B0C$Ah7CEb?96P*sgQxD%{ECWk9er#o^H#7ude;zt7nOXdR-%- zMma5Spc{<#<2&}Ecy7yxziW^9+lp>=uDNBD-0}vx$!0&dW9ZG6@pIRnie;;?)w#fy zQD4g&=%yM!jbBZM%`EC{6&Xg6*NhCCJ<#18D3UR3Mut_BcO}Er-8lk z1G8vQu{UhF=+-hmU32_hhy{WoX&ooWB7HB=GQqhk>G0~rFy+Mot+xT zaB3XQso6nF_3${IO>U=Xayy#IT~A51$?J48d1YL}Em|&4Zuc@;POP+48?H`Q!__Go zu1;>aGBPGsGO7(%r>o&=)W33a!?m7_YICx4@hit1lu0u(s_mf8wV904OipeGF*0o4 zgsnbO$MQ(oJRKEj@tVl)r5z_a$vU`2{($`5ynGuq@X;zu{N-2K_Cm47yy zS=_U!P3=xQtKF%gcBiJ=wOa{oPi4x8KxL!8)AHpl9fNv(0hj7PM4KCN_V4}W8<{W2<|m}!4uOC~ zf2DlG;Q1EOLqIkZkcGTb-^x;zB$#$KYNkb_W@;KWC5~A85K$Cv)kS2RXp^EKwof7m#zGM1)YjiqVPK$#kLQi(mu6A3N3<@$|lf(`lIaq1^Hu8xmS zE%wf|tGzQV+B;Lj-l-Tgu~BgwM`q@ZjovE5Xxh~ z|AjyhiGgKHM87IO-9{9C#B%gnW&6!+$$nFdsXgs#YO{uh;ZU#}$_Xx9%JCxbB7nWx z%(d$*SVzD5?))uS<0O$oJ8pG&W;Q;tT06>L^L%%N#;}6wk2eY~5!wOS)Sn z#qKNEB#t>r^P5UV6Qk?MCSj&$;eHU_{w-QSaoFxFxwS3JV}@|cv_B8?~AtmK)?#=x|5Fl-lL zO)XyEw5!)QF)qWI8XjL>tyrI?Z&6BGJkP*|JSM@E;laVTn@HpVhIpR9WXmm?>tut@Wd_}@53VpjW&=XP147IQ%HN7x z-I@B8e=i8PL?B4<8iz0eF{BhF(Gj34oMt%gU<&3N9CFp1AbzN04RJ(K1Q|M?q!i2% zy+bGxc9#IpqgBi_lS-c^TLAqPMz@T_C4nKMQCwXA;_ZJAnCt{^#f4H#Sf&RD|Jck? z5+RDxQ}E&MU%UL`=f3lSfBHhx9tQ`Xz*`iP6jPFH!6(3z^*(|3C}G|J_;m28uRWg% z|6~8+5HGUhaGVd`O$P_ptTS*5Aovc2Yw%iji#Q#6@Z;IrHy3YSor3G{F0R1&cV};} z!NnDL^TRdx{^i-5YjFJo_~s?Jcyo1q_WJe97vROk+n49pum784yb|YO4-Wd^lAqB7 z{tEdw+!6TcmksuB`fQ0%u-xDPrMW7|<^O;r%i}eSHZVN?e|U>4*5WTi=M`^r?7022 zAi&YGpU;KkL$JU}N(TphaD@^+^)sUkBoc!E$*_-=~+? z-~D(^6V~X57)1brpSXf*qsk(5ckHhSNzvg!zu!MN3q$Z0FIO~WrX@;lQ2_ejx;VvU zlJFly14{Y7LgBhELkAD81Zw5K>x|s-)R6z4H+1*%|0y0O!$h7jlPvxBdj_!fqtl>aG6DU1S` z1OltTGyoTo5c}CpUkn0XbAL>~{7a=qiwO&G#3h2*dr(4=i%h{CsB}?oJt)P156Zi*W(*1fHGwH5+kNrzT(REp07V`aq4mkJ(uKx)> zfs`gp;(r1kdhf2!dmq3jaD^zyt~LeNc#Zx|BE%qTu4{hxDflEqwG7Cwzi|lsmeehP z(YDgtO~DE!{QMttcG=5h3ou3NbO2sLe^u=wrz^4vv#Zup9xJ**+kwzbc`XSaMqn;B zPX>x==5%UwGO0gDO#gr4LR7`0_@K!$4Jk<3WP%}U-zQNzV4w1f{y2OQO4%eR0GlX4 ziI_l~pd9JICxMXHiHTnimlmi{rbk8xXyA=GyW@kWrsce~UBYry2Ty?Is$R_D?!7Wvn^a>^Aec55h&oqJ$t9xa@ zuMYeKLY(pm^i!|jha0-;9rYp-q29mLjMO@kVdHBAM+m@V$(Lt3V3Rh*0m|>qlmQ(Owa@H;|fJ!PUuP-I4EwdJ>vbGNP-w4qBvTd zARjSb0$D^?k+dtZr&}iNBJU>FNNfM(71@felF3>2qtS%NHB2=8(60-uvv1qI;9J!v?WE0UC zuGA{!j*}({M0UdW>?@s{2+?#!NNG`aP8+EmHxqmV3x zX`QYxztwBrGySJ|ypx6A1yye4Ymh@z;AJgiZik&S3vKSY15;g+SKly_Kt7k=vcMw z<*%4C+&k?tSlngcnn<;$;$;Sg&-hE}b3<7i7ylcH{1w%0VrKE3b77Gv7oJUl_m^)5 zc6J8YHhfWW7l>y>{J6sYicc~%w^&Q%;?AYsEjq9^TrwV@;p4rb*$QH^6uyT+z)WB< z0p@7I<^)anmy`(XVr4~OC~l$ zz&;;<_b|kPn(5r9QjLy)8WECcIoBNNVu2$}w-u}41zO;Ud1vYqpF}CY5RHOl!-F|L z{gj}^zw(WPn`{jZFyRvV*e8*XVwxVO{t5+~5J$^Cx)ouyW9H5-qkc?+enbLv{7m8M z!zk#(h~mEbMGEOK#u2*UQ_(WJ#3!|rD+e-&H(_{5LhKv9@x|f|p_jtdEA{!AKp|EH zg8*U)!hoLWyIvaf<;qW359zxryjeXe6Fh~>BHUYED{1(Dr7JibPfmw36nLW(2RaCi zyu}nQCMWI!1><0}@Q3br>`vf(;rb&N!2nHW-pPD82~PZ(KlG>L6R(~cj-63dWn=zu zi;{$?G48yvFO;9D9JqW{a3C8>QXhtblWbuBrl#=UnWzf_0Ks=8!T)A$L*_z(GucqW z$=%f2Nuq~=>=VTR)@`!r?rrsqG10V`H5%{+h^vs5=g?>{95`wUoea@1IB|w(JevB8O~%6+gw6>%@#bhA3>{|_z{zB^KxhW%6MyEqXtWr!e~wNXP^IRP@`83FL)2p^G&a}78e+;zfrn*C*5^Mk|tbmud;vewD-H00d7BYo3uu#0y zH%vjEJfAipR$c{BCik^?v4eA(kT68aj;>^C8t9)$Yd0^FdaPS2!)LxeBvBTDHPEy(f zc){a2Z?eq~!0iFPj0&Iri0SG(@nuyjrql!_Laj+h{xyznQoFHnEDa5DXk3&nli>_| zAUVHrs+C(STlM8W4~~|{G62zsu{adPhPp35JbotP{mc)hE2Mrtlss02qrQhYs-}AY zu1n_G6+hahWW^~sI|SGNJO%Hr&%rl`;PUM1>c6NXGEWR6dbnnV%B3F0R# z7#=Uhs>5Tub6HbKmEP5=H-2GD541# zzaAs%AG0r0&O|Sjl!wkx`F_q`@Y2=QSdzuf)Fw3o>sWVnOQ)ToerZ+K7%!D zE1OoMXcgbc=8OqzQ6@A`FZ5RsNBucWu`iMfxd}`bf;!niZl%)%q6NOu-!L7c&X{TjVhl| zbO;oE`TTpHqL^80=&(QtqmFENHWo>xjk{KOQ55h*%5qP0sr{4lFaD3B=-^ATk3Pb6 z9HK!;d>C>;!i20+E@lW!u2OC;R4s%I9p9Z-|ENlmy5!rI4+6fty?V)2vJi`WmIutR zjtB)z8LCq^fBzb|19#MSnjlhnWj2kYEC(_3)zao)XN4Z5G{mXcS8jooAI)uym4DqB ztNbG`B3@%`>EDWcHkCl1A<2Z4JS&yzjuk&7H7nC#jm1?6X!&hZ*}Se6Gs=inQ2)R} zro{3tOSZ6|AZ(${g4wV;Mzn-T9RAo==$Y@CWyf0!6Ipzx6oS}<#*w(^H9cZWll>1- ze=ryv4!{LBrW3@7S&L{AjDV{E9BGy#r}_>cvL%cx#);Dvde)~|ei}Nql;IesW?Axi!NG+DOdaYfoQr@?f z9}PB1RT#oAMmG6cf|2kOL~MrJh-^_xG5hZA>nrx@CPiApCS%~mHv=7G?VfXX&8mIF zSqIZ?w^<>ncGn8` za5NdtPW;Jadg3q8e1@ju@ywr$hm-MQ>`W%!$#~%}COha+4y4NXtsR{_o!CA+1whvE zIScRLHZ9R+DurR>1cLELON+9#V!u?1SGpXzg^vb|gglQY2bRhQ=($n0y zK=S|chd# zxpsbt^DvXS+zV)0tajP1FMv10UBb6x;m>^!jwkb>@6N_>G#~kB>`$hPx#JI=*}^+< zyvcazqIuxClVCA~(_nHk9}UOznLj$2drmW|)bcOvq3v4y`p5UP5F4iHWG5>$%rZm8 zMy)#dY|>iJ-%f3y2g1boo){iX?=6DCj|ryehsYO!&$Il?EF_;uqbuC7UF>P)VK!PyVajau%(RbE^8XWUSf>>off6p|vmSlcAXF zSxkt!e1D#ORt>U)AlFBe+v_&a@{r+q2=Thg{k&N4aQ_{QWX%>{ATI){A@Ettque`{ zTPxXn#$F**q^Z3Mf)*t4Q7N(^6a#;!^6Gd2U=E$5{gF8bkvP}JJt4KzlPG`Lg3ubx zU_%vV$y>WeiSO2zPAkZ6{E>TNg|h(i_=}8N6n%?9VYB+f@!uGaKa<7JbcKEv4gdb( zDBBgG1pKxCSD9Uq>d@yKTAUc#2}A1`Ja9-tt!fLl1i^r3wpUDVC6@6*XR36r127o< z+{vrJlHz|GQ))Jwy~5eCA}9uiEHe3_m`Ttt8V7rSrw|2xWos=Vv`x{ ziv{0pV-unO;RpoV2(Ga&X1^hM&f=# z6sAZ3;|E@gmy7BxHxb|BMFDuOp+4kGQUHxMVR!^0Qob9JnLJ#)BYFgQ=^m9TQo(_} z`!{pjf_x`~T0V*XS5?B|@xBiQk@#UC=OD9VAxJm#J`c=dUK>H209UcwAYam1g-}dW zQJ&L6VL8VtzV%gdRaunt&r8`=r}@R`NAjQFT^@n>);|Jh9n#31Mx zEP<`x=lpObrIzXP)U%{YDym&cLnv|*T8YFANs8#Dc0ZFP?}zUObIVk}%t_?I`73f4 ziCbm(Mb(w4gyq$E@?Y`KpKuN2^koxO((ot?q5|FLy)HC@KZoU^k@M)QM8j2FEZGEk zoF%hKlLxX4Hfi#Qv<_qs*p!oG>mk;o!c=Q16!AU!L>E43E7ww1L#y^6itq+9Rv-h@ z^03@=I_1fgxfz^gRC1VWJvc3~?Z6{~_u8h|ue}?z?Va{i6^PzZFBX+o*4sX>+kd>? z_OrLY{mU@SC0YTu-sdw&`4hNJ21j-$T6|dRK+BG7wIwM=PrNIDv zxWfNNg2rz+Ey4{>KY#^-{HmEH8vNL9ua;9+HcR*wS$k}KJxW%?*u z+mHBn9&;|O&^jiflAG+eD%@2gs0QjY8b(g)XFG_uFp-tc{t#lo7d(jwQ65> zLj!STFLCza*WMz1#SHD<>3DK-r2abRrN>2*RPVI+1HWePdz`Kz^;f;49>0B0Z^wUl zm!d@etzW>!zst|M7t@CoaX?Y0X2oU3Ktf??E7{0R&ENC|s`Bz>yYjAW4zw;~MAlm= z9y1pm%i(I3h&a5IE)$ggQYt8`q~2xzMQxUI4(SOKopYqMiFO*7HMw>Mux{yg8mj74 zI}=NbY`eVaZnRaXDiWXz)wSHw#0@++pG=*F?~mNs(DP@*h37f`%o{oRApIq2_}4H*PU}Z7rR<i|C&6#1!H%5*ZXLLe)S z%5+VczAuin*rr8;Z7>Sc8?K$j%I7JcnPS&|5AiLEP@49cM~L~qc=7N}+!r*ceKY>Y zKz(kb?6rE&zpt9BMK}YsyII@QpFOaxHh0x z@nI&H^sdh@S^uS3Y676yZ0n)7D1f-hyH7hTEMJ7%ba^04z$0xiu>g{;xs zObZNDKzY)6sgOSKtkiqz!RBNUXay4wJ|B5W`+EB`E7V_Oed>TZ+MdO_{w2$^fT4}u zDI4xWSVmH|IERB#UJ=-xy2v>R{2*|HiSNwji^Xg-^S!B$MvKvOJekiBa$Ik?I0;Th z6VIKUOcoFhhu(NHgcV0S41$!onarVe-m0h$ko9fel2Du^*8ctmM}ewN!(a{k{M~L> zz3AWSXsX~zT=xK5N3DEU>(ZZ7DjQj^nI*M?Ddq>z(#aUg6$vM?IO1uYKtjzZ*N>ka3aP^`H6Y094OOFDDsnSEDuOY&3YvAGWc#KFWtZsYi@ChWw{|3ZRaG|3gl`O zwQYTQalitHQirNyo5rYKzPorK1848PKfC%z?{rugnM+xN;a!RnaPa~>XAKSkif;S2 zFafH%PPi=~sgC#YtdPqD-{KH0(aY3_A)n?lmUh(B3xKleQ?4X>)QeU7AZw=ff!`8B zzs-W)>QWRQAACc298vt%CKgyxQ9#v&X;ix_tN*tn;nIv;Ql{l$i}n;iKk#ue>zIk#ni{Q(E4{c9 zjus?Y3zb(|83Jh6WwD|(u3Huyde_M->PXdqj7WekEybn^2{GzBk&>lk#cKkCZ(s-` zA0=ENyiwn&A&`ge?^~oYt0l|e@e}ckiNjjnY(=!LRmVi4Zh9?@mKBdU+#ThPtksSr z5w>baVkTNk9obnRl=z%@O?WWpToh(wP}MgBa3u~y>n6Yl_U(rw@&7CKkL&Zx4}7>k zynAu^VE}}u&wh|Te+=&;0KxV7WufZf64896@-nq-{k(hon!n}iTH92rV~WCLiRiAG zo7Y^_zBhs^BG6wD^}GWX30VvKIj?EV-|#TPhaBJse#lT=LnVU<`utMjNhZkUx>}1Y z7~9_;Vh)%O0xzBnyn8v%h2^I(}kA6=pZ^VA6v1^Qhi&WCKr zvrf@xr=7KzeHi0ortCukgMQ}WAIBu<-@3=ovPx=)|0>b6MrjI{$d8j`HV zrJsx_5=wPiaVxH}@1Qsok$-vL;zb-HztJv-DtD(TiAhM7+pCy4#phYUq%wKxHa=U6 zE?4rYzT;gc`b~lFryPDiui>ON)G4h@;BLLNuCM>QxUl3kFOOcr5J7(hP=NVuDI0N@ zi#i?71c{(VKAMi^!{Km#;*6)rnYnZ5%tvUv zm<(sL*-pyDF37=I7=pKWxuPj}E3SVDK%cAI>tut@IltgCA#5NIzSuvX*CVcuK2{;p z!8&+&9FF5SlhKI(-*FuC|ITPK{lXm$r{j_1j3<*X9CtV!jlTfS!;?~eHYtV47tXzL znauq`o_@c7u)+a4JpiB&DDe;2F9*-^*faBhZZWz$IQSdC;$W4a#n(NhcypOHAj$Ih zXQlwKe@qj6yB+vx+T(7{*FB0p(qsO2g2JzRDcy!BT_Hq!;P~$c2hX1I+P{4+F4&*X zo;?FsK8%=5*@QGbI5;@?1l|zvJx&Y4p6QZJ6sWs