From 61efb470c5ecdd2f5758baa954e1228cec2d069a Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Mon, 29 Jan 2024 00:56:07 +0000 Subject: [PATCH] Commit new Chart releases for TrueCharts Signed-off-by: TrueCharts-Bot --- stable/collabora/4.1.13/app-changelog.md | 9 - .../4.1.13/charts/common-17.2.28.tgz | Bin 98029 -> 0 bytes .../collabora/{4.1.13 => 4.1.14}/CHANGELOG.md | 22 +- .../collabora/{4.1.13 => 4.1.14}/Chart.yaml | 6 +- stable/collabora/{4.1.13 => 4.1.14}/README.md | 0 stable/collabora/4.1.14/app-changelog.md | 11 + .../{4.1.13 => 4.1.14}/app-readme.md | 0 .../4.1.14}/charts/common-17.2.29.tgz | Bin .../{4.1.13 => 4.1.14}/ix_values.yaml | 2 +- .../{4.1.13 => 4.1.14}/questions.yaml | 0 .../{4.1.13 => 4.1.14}/templates/NOTES.txt | 0 .../templates/_configmap.tpl | 0 .../{4.1.13 => 4.1.14}/templates/common.yaml | 0 .../collabora/{4.1.13 => 4.1.14}/values.yaml | 0 stable/dashdot/7.3.3/app-changelog.md | 9 - stable/dashdot/{7.3.3 => 7.3.4}/CHANGELOG.md | 18 +- stable/dashdot/{7.3.3 => 7.3.4}/Chart.yaml | 4 +- stable/dashdot/{7.3.3 => 7.3.4}/README.md | 0 stable/dashdot/7.3.4/app-changelog.md | 9 + stable/dashdot/{7.3.3 => 7.3.4}/app-readme.md | 0 .../7.3.4}/charts/common-17.2.29.tgz | Bin .../dashdot/{7.3.3 => 7.3.4}/ix_values.yaml | 2 +- .../dashdot/{7.3.3 => 7.3.4}/questions.yaml | 0 .../{7.3.3 => 7.3.4}/templates/NOTES.txt | 0 .../{7.3.3 => 7.3.4}/templates/common.yaml | 0 stable/dashdot/{7.3.3 => 7.3.4}/values.yaml | 0 stable/drawio/8.1.15/app-changelog.md | 9 - stable/drawio/{8.1.15 => 8.1.16}/CHANGELOG.md | 18 +- stable/drawio/{8.1.15 => 8.1.16}/Chart.yaml | 4 +- stable/drawio/{8.1.15 => 8.1.16}/README.md | 0 stable/drawio/8.1.16/app-changelog.md | 9 + .../drawio/{8.1.15 => 8.1.16}/app-readme.md | 0 .../8.1.16}/charts/common-17.2.29.tgz | Bin .../drawio/{8.1.15 => 8.1.16}/ix_values.yaml | 2 +- .../drawio/{8.1.15 => 8.1.16}/questions.yaml | 0 .../{8.1.15 => 8.1.16}/templates/NOTES.txt | 0 .../{8.1.15 => 8.1.16}/templates/common.yaml | 0 stable/drawio/{8.1.15 => 8.1.16}/values.yaml | 0 .../emulatorjs/{8.2.9 => 8.2.10}/CHANGELOG.md | 18 +- .../emulatorjs/{8.2.9 => 8.2.10}/Chart.yaml | 4 +- stable/emulatorjs/{8.2.9 => 8.2.10}/README.md | 0 stable/emulatorjs/8.2.10/app-changelog.md | 9 + .../{8.2.9 => 8.2.10}/app-readme.md | 0 .../8.2.10}/charts/common-17.2.29.tgz | Bin .../{8.2.9 => 8.2.10}/ix_values.yaml | 2 +- .../{8.2.9 => 8.2.10}/questions.yaml | 0 .../{8.2.9 => 8.2.10}/templates/NOTES.txt | 0 .../{8.2.9 => 8.2.10}/templates/common.yaml | 0 .../emulatorjs/{8.2.9 => 8.2.10}/values.yaml | 0 stable/emulatorjs/8.2.9/app-changelog.md | 9 - stable/flexget/8.2.13/app-changelog.md | 9 - .../flexget/{8.2.13 => 8.2.14}/CHANGELOG.md | 18 +- stable/flexget/{8.2.13 => 8.2.14}/Chart.yaml | 4 +- stable/flexget/{8.2.13 => 8.2.14}/README.md | 0 stable/flexget/8.2.14/app-changelog.md | 9 + .../flexget/{8.2.13 => 8.2.14}/app-readme.md | 0 .../8.2.14}/charts/common-17.2.29.tgz | Bin .../flexget/{8.2.13 => 8.2.14}/ix_values.yaml | 2 +- .../flexget/{8.2.13 => 8.2.14}/questions.yaml | 0 .../{8.2.13 => 8.2.14}/templates/NOTES.txt | 0 .../{8.2.13 => 8.2.14}/templates/common.yaml | 0 stable/flexget/{8.2.13 => 8.2.14}/values.yaml | 0 stable/flowise/3.1.13/app-changelog.md | 9 - .../flowise/{3.1.13 => 3.1.14}/CHANGELOG.md | 18 +- stable/flowise/{3.1.13 => 3.1.14}/Chart.yaml | 4 +- stable/flowise/{3.1.13 => 3.1.14}/README.md | 0 stable/flowise/3.1.14/app-changelog.md | 9 + .../flowise/{3.1.13 => 3.1.14}/app-readme.md | 0 .../3.1.14}/charts/common-17.2.29.tgz | Bin .../flowise/{3.1.13 => 3.1.14}/ix_values.yaml | 2 +- .../flowise/{3.1.13 => 3.1.14}/questions.yaml | 0 .../{3.1.13 => 3.1.14}/templates/NOTES.txt | 0 .../{3.1.13 => 3.1.14}/templates/_secrets.tpl | 0 .../{3.1.13 => 3.1.14}/templates/common.yaml | 0 stable/flowise/{3.1.13 => 3.1.14}/values.yaml | 0 stable/healthchecks/13.1.16/CHANGELOG.md | 99 + stable/healthchecks/13.1.16/Chart.yaml | 38 + stable/healthchecks/13.1.16/README.md | 28 + stable/healthchecks/13.1.16/app-changelog.md | 9 + stable/healthchecks/13.1.16/app-readme.md | 8 + .../13.1.16}/charts/common-17.2.29.tgz | Bin stable/healthchecks/13.1.16/ix_values.yaml | 41 + stable/healthchecks/13.1.16/questions.yaml | 2870 ++++++++++ .../13.1.16}/templates/NOTES.txt | 0 .../13.1.16}/templates/common.yaml | 0 .../13.1.16}/values.yaml | 0 stable/komga/12.2.8/CHANGELOG.md | 99 + stable/komga/12.2.8/Chart.yaml | 40 + stable/komga/12.2.8/README.md | 28 + stable/komga/12.2.8/app-changelog.md | 9 + stable/komga/12.2.8/app-readme.md | 8 + .../12.2.8}/charts/common-17.2.29.tgz | Bin stable/komga/12.2.8/ix_values.yaml | 36 + stable/komga/12.2.8/questions.yaml | 3101 +++++++++++ .../12.2.8}/templates/NOTES.txt | 0 stable/komga/12.2.8/templates/common.yaml | 1 + .../4.1.14 => komga/12.2.8}/values.yaml | 0 stable/meshcentral/14.1.13/CHANGELOG.md | 99 + stable/meshcentral/14.1.13/Chart.yaml | 38 + stable/meshcentral/14.1.13/README.md | 28 + stable/meshcentral/14.1.13/app-changelog.md | 9 + stable/meshcentral/14.1.13/app-readme.md | 8 + .../14.1.13}/charts/common-17.2.29.tgz | Bin stable/meshcentral/14.1.13/ix_values.yaml | 1001 ++++ stable/meshcentral/14.1.13/questions.yaml | 4721 +++++++++++++++++ .../meshcentral/14.1.13/templates/_secret.tpl | 171 + .../meshcentral/14.1.13/templates/common.yaml | 22 + .../14.1.13}/values.yaml | 0 stable/nextcloud/28.1.30/CHANGELOG.md | 99 + stable/nextcloud/28.1.30/Chart.yaml | 53 + .../4.1.14 => nextcloud/28.1.30}/LICENSE | 0 stable/nextcloud/28.1.30/README.md | 28 + stable/nextcloud/28.1.30/app-changelog.md | 9 + stable/nextcloud/28.1.30/app-readme.md | 8 + .../28.1.30/charts/common-17.2.29.tgz | Bin 0 -> 98038 bytes .../28.1.30}/charts/redis-11.1.16.tgz | Bin stable/nextcloud/28.1.30/ix_values.yaml | 516 ++ stable/nextcloud/28.1.30/questions.yaml | 4169 +++++++++++++++ .../28.1.30}/templates/NOTES.txt | 0 .../28.1.30/templates/_configmap.tpl | 443 ++ .../nextcloud/28.1.30/templates/_cronjobs.tpl | 34 + .../28.1.30/templates/_ingressInjector.tpl | 23 + .../28.1.30/templates/_initPerms.tpl | 29 + .../28.1.30/templates/_validation.tpl | 42 + .../28.1.30/templates/_waitNextcloud.tpl | 25 + .../nextcloud/28.1.30/templates/common.yaml | 92 + .../6.1.10 => nextcloud/28.1.30}/values.yaml | 0 stable/paperless-ngx/6.4.6/app-changelog.md | 9 - .../{6.4.6 => 6.4.7}/CHANGELOG.md | 18 +- .../paperless-ngx/{6.4.6 => 6.4.7}/Chart.yaml | 4 +- .../paperless-ngx/{6.4.6 => 6.4.7}/README.md | 0 stable/paperless-ngx/6.4.7/app-changelog.md | 9 + .../{6.4.6 => 6.4.7}/app-readme.md | 0 .../6.4.7/charts/common-17.2.29.tgz | Bin 0 -> 98038 bytes .../6.4.7/charts/redis-11.1.16.tgz | Bin 0 -> 104121 bytes .../{6.4.6 => 6.4.7}/ix_values.yaml | 2 +- .../{6.4.6 => 6.4.7}/questions.yaml | 0 .../paperless-ngx/6.4.7/templates/NOTES.txt | 1 + .../{6.4.6 => 6.4.7}/templates/_secrets.tpl | 0 .../{6.4.6 => 6.4.7}/templates/common.yaml | 0 stable/paperless-ngx/6.4.7/values.yaml | 0 stable/readarr/19.1.14/CHANGELOG.md | 99 + stable/readarr/19.1.14/Chart.yaml | 42 + stable/readarr/19.1.14/README.md | 28 + stable/readarr/19.1.14/app-changelog.md | 9 + stable/readarr/19.1.14/app-readme.md | 8 + .../readarr/19.1.14/charts/common-17.2.29.tgz | Bin 0 -> 98038 bytes stable/readarr/19.1.14/ix_values.yaml | 109 + stable/readarr/19.1.14/questions.yaml | 2885 ++++++++++ stable/readarr/19.1.14/templates/NOTES.txt | 1 + stable/readarr/19.1.14/templates/common.yaml | 11 + stable/readarr/19.1.14/values.yaml | 0 stable/seafile/4.1.14/app-changelog.md | 9 - .../seafile/{4.1.14 => 4.1.15}/CHANGELOG.md | 18 +- stable/seafile/{4.1.14 => 4.1.15}/Chart.yaml | 4 +- stable/seafile/4.1.15/LICENSE | 106 + stable/seafile/{4.1.14 => 4.1.15}/README.md | 0 stable/seafile/4.1.15/app-changelog.md | 9 + .../seafile/{4.1.14 => 4.1.15}/app-readme.md | 0 .../seafile/4.1.15/charts/common-17.2.29.tgz | Bin 0 -> 98038 bytes .../charts/mariadb-12.1.12.tgz | Bin .../seafile/{4.1.14 => 4.1.15}/ix_values.yaml | 2 +- .../seafile/{4.1.14 => 4.1.15}/questions.yaml | 0 stable/seafile/4.1.15/templates/NOTES.txt | 1 + stable/seafile/4.1.15/templates/common.yaml | 1 + stable/seafile/4.1.15/values.yaml | 0 stable/sourcegraph/4.1.11/app-changelog.md | 9 - .../{4.1.11 => 4.1.12}/CHANGELOG.md | 18 +- .../sourcegraph/{4.1.11 => 4.1.12}/Chart.yaml | 4 +- .../sourcegraph/{4.1.11 => 4.1.12}/README.md | 0 stable/sourcegraph/4.1.12/app-changelog.md | 9 + .../{4.1.11 => 4.1.12}/app-readme.md | 0 .../4.1.12/charts/common-17.2.29.tgz | Bin 0 -> 98038 bytes .../{4.1.11 => 4.1.12}/ix_values.yaml | 2 +- .../{4.1.11 => 4.1.12}/questions.yaml | 0 .../{4.1.11 => 4.1.12}/templates/common.yaml | 0 stable/sourcegraph/4.1.12/values.yaml | 0 stable/splunk/6.1.10/app-changelog.md | 9 - stable/splunk/{6.1.10 => 6.1.11}/CHANGELOG.md | 18 +- stable/splunk/{6.1.10 => 6.1.11}/Chart.yaml | 4 +- stable/splunk/{6.1.10 => 6.1.11}/README.md | 0 stable/splunk/6.1.11/app-changelog.md | 9 + .../splunk/{6.1.10 => 6.1.11}/app-readme.md | 0 .../splunk/6.1.11/charts/common-17.2.29.tgz | Bin 0 -> 98038 bytes .../splunk/{6.1.10 => 6.1.11}/ix_values.yaml | 2 +- .../splunk/{6.1.10 => 6.1.11}/questions.yaml | 0 stable/splunk/6.1.11/templates/NOTES.txt | 1 + .../{6.1.10 => 6.1.11}/templates/_config.tpl | 0 .../{6.1.10 => 6.1.11}/templates/common.yaml | 0 stable/splunk/6.1.11/values.yaml | 0 190 files changed, 21599 insertions(+), 213 deletions(-) delete mode 100644 stable/collabora/4.1.13/app-changelog.md delete mode 100644 stable/collabora/4.1.13/charts/common-17.2.28.tgz rename stable/collabora/{4.1.13 => 4.1.14}/CHANGELOG.md (84%) rename stable/collabora/{4.1.13 => 4.1.14}/Chart.yaml (94%) rename stable/collabora/{4.1.13 => 4.1.14}/README.md (100%) create mode 100644 stable/collabora/4.1.14/app-changelog.md rename stable/collabora/{4.1.13 => 4.1.14}/app-readme.md (100%) rename stable/{dashdot/7.3.3 => collabora/4.1.14}/charts/common-17.2.29.tgz (100%) rename stable/collabora/{4.1.13 => 4.1.14}/ix_values.yaml (92%) rename stable/collabora/{4.1.13 => 4.1.14}/questions.yaml (100%) rename stable/collabora/{4.1.13 => 4.1.14}/templates/NOTES.txt (100%) rename stable/collabora/{4.1.13 => 4.1.14}/templates/_configmap.tpl (100%) rename stable/collabora/{4.1.13 => 4.1.14}/templates/common.yaml (100%) rename stable/collabora/{4.1.13 => 4.1.14}/values.yaml (100%) delete mode 100644 stable/dashdot/7.3.3/app-changelog.md rename stable/dashdot/{7.3.3 => 7.3.4}/CHANGELOG.md (90%) rename stable/dashdot/{7.3.3 => 7.3.4}/Chart.yaml (96%) rename stable/dashdot/{7.3.3 => 7.3.4}/README.md (100%) create mode 100644 stable/dashdot/7.3.4/app-changelog.md rename stable/dashdot/{7.3.3 => 7.3.4}/app-readme.md (100%) rename stable/{drawio/8.1.15 => dashdot/7.3.4}/charts/common-17.2.29.tgz (100%) rename stable/dashdot/{7.3.3 => 7.3.4}/ix_values.yaml (97%) rename stable/dashdot/{7.3.3 => 7.3.4}/questions.yaml (100%) rename stable/dashdot/{7.3.3 => 7.3.4}/templates/NOTES.txt (100%) rename stable/dashdot/{7.3.3 => 7.3.4}/templates/common.yaml (100%) rename stable/dashdot/{7.3.3 => 7.3.4}/values.yaml (100%) delete mode 100644 stable/drawio/8.1.15/app-changelog.md rename stable/drawio/{8.1.15 => 8.1.16}/CHANGELOG.md (90%) rename stable/drawio/{8.1.15 => 8.1.16}/Chart.yaml (96%) rename stable/drawio/{8.1.15 => 8.1.16}/README.md (100%) create mode 100644 stable/drawio/8.1.16/app-changelog.md rename stable/drawio/{8.1.15 => 8.1.16}/app-readme.md (100%) rename stable/{emulatorjs/8.2.9 => drawio/8.1.16}/charts/common-17.2.29.tgz (100%) rename stable/drawio/{8.1.15 => 8.1.16}/ix_values.yaml (87%) rename stable/drawio/{8.1.15 => 8.1.16}/questions.yaml (100%) rename stable/drawio/{8.1.15 => 8.1.16}/templates/NOTES.txt (100%) rename stable/drawio/{8.1.15 => 8.1.16}/templates/common.yaml (100%) rename stable/drawio/{8.1.15 => 8.1.16}/values.yaml (100%) rename stable/emulatorjs/{8.2.9 => 8.2.10}/CHANGELOG.md (92%) rename stable/emulatorjs/{8.2.9 => 8.2.10}/Chart.yaml (96%) rename stable/emulatorjs/{8.2.9 => 8.2.10}/README.md (100%) create mode 100644 stable/emulatorjs/8.2.10/app-changelog.md rename stable/emulatorjs/{8.2.9 => 8.2.10}/app-readme.md (100%) rename stable/{flexget/8.2.13 => emulatorjs/8.2.10}/charts/common-17.2.29.tgz (100%) rename stable/emulatorjs/{8.2.9 => 8.2.10}/ix_values.yaml (92%) rename stable/emulatorjs/{8.2.9 => 8.2.10}/questions.yaml (100%) rename stable/emulatorjs/{8.2.9 => 8.2.10}/templates/NOTES.txt (100%) rename stable/emulatorjs/{8.2.9 => 8.2.10}/templates/common.yaml (100%) rename stable/emulatorjs/{8.2.9 => 8.2.10}/values.yaml (100%) delete mode 100644 stable/emulatorjs/8.2.9/app-changelog.md delete mode 100644 stable/flexget/8.2.13/app-changelog.md rename stable/flexget/{8.2.13 => 8.2.14}/CHANGELOG.md (90%) rename stable/flexget/{8.2.13 => 8.2.14}/Chart.yaml (96%) rename stable/flexget/{8.2.13 => 8.2.14}/README.md (100%) create mode 100644 stable/flexget/8.2.14/app-changelog.md rename stable/flexget/{8.2.13 => 8.2.14}/app-readme.md (100%) rename stable/{flowise/3.1.13 => flexget/8.2.14}/charts/common-17.2.29.tgz (100%) rename stable/flexget/{8.2.13 => 8.2.14}/ix_values.yaml (90%) rename stable/flexget/{8.2.13 => 8.2.14}/questions.yaml (100%) rename stable/flexget/{8.2.13 => 8.2.14}/templates/NOTES.txt (100%) rename stable/flexget/{8.2.13 => 8.2.14}/templates/common.yaml (100%) rename stable/flexget/{8.2.13 => 8.2.14}/values.yaml (100%) delete mode 100644 stable/flowise/3.1.13/app-changelog.md rename stable/flowise/{3.1.13 => 3.1.14}/CHANGELOG.md (89%) rename stable/flowise/{3.1.13 => 3.1.14}/Chart.yaml (96%) rename stable/flowise/{3.1.13 => 3.1.14}/README.md (100%) create mode 100644 stable/flowise/3.1.14/app-changelog.md rename stable/flowise/{3.1.13 => 3.1.14}/app-readme.md (100%) rename stable/{paperless-ngx/6.4.6 => flowise/3.1.14}/charts/common-17.2.29.tgz (100%) rename stable/flowise/{3.1.13 => 3.1.14}/ix_values.yaml (95%) rename stable/flowise/{3.1.13 => 3.1.14}/questions.yaml (100%) rename stable/flowise/{3.1.13 => 3.1.14}/templates/NOTES.txt (100%) rename stable/flowise/{3.1.13 => 3.1.14}/templates/_secrets.tpl (100%) rename stable/flowise/{3.1.13 => 3.1.14}/templates/common.yaml (100%) rename stable/flowise/{3.1.13 => 3.1.14}/values.yaml (100%) create mode 100644 stable/healthchecks/13.1.16/CHANGELOG.md create mode 100644 stable/healthchecks/13.1.16/Chart.yaml create mode 100644 stable/healthchecks/13.1.16/README.md create mode 100644 stable/healthchecks/13.1.16/app-changelog.md create mode 100644 stable/healthchecks/13.1.16/app-readme.md rename stable/{seafile/4.1.14 => healthchecks/13.1.16}/charts/common-17.2.29.tgz (100%) create mode 100644 stable/healthchecks/13.1.16/ix_values.yaml create mode 100644 stable/healthchecks/13.1.16/questions.yaml rename stable/{paperless-ngx/6.4.6 => healthchecks/13.1.16}/templates/NOTES.txt (100%) rename stable/{seafile/4.1.14 => healthchecks/13.1.16}/templates/common.yaml (100%) rename stable/{paperless-ngx/6.4.6 => healthchecks/13.1.16}/values.yaml (100%) create mode 100644 stable/komga/12.2.8/CHANGELOG.md create mode 100644 stable/komga/12.2.8/Chart.yaml create mode 100644 stable/komga/12.2.8/README.md create mode 100644 stable/komga/12.2.8/app-changelog.md create mode 100644 stable/komga/12.2.8/app-readme.md rename stable/{sourcegraph/4.1.11 => komga/12.2.8}/charts/common-17.2.29.tgz (100%) create mode 100644 stable/komga/12.2.8/ix_values.yaml create mode 100644 stable/komga/12.2.8/questions.yaml rename stable/{seafile/4.1.14 => komga/12.2.8}/templates/NOTES.txt (100%) create mode 100644 stable/komga/12.2.8/templates/common.yaml rename stable/{seafile/4.1.14 => komga/12.2.8}/values.yaml (100%) create mode 100644 stable/meshcentral/14.1.13/CHANGELOG.md create mode 100644 stable/meshcentral/14.1.13/Chart.yaml create mode 100644 stable/meshcentral/14.1.13/README.md create mode 100644 stable/meshcentral/14.1.13/app-changelog.md create mode 100644 stable/meshcentral/14.1.13/app-readme.md rename stable/{splunk/6.1.10 => meshcentral/14.1.13}/charts/common-17.2.29.tgz (100%) create mode 100644 stable/meshcentral/14.1.13/ix_values.yaml create mode 100644 stable/meshcentral/14.1.13/questions.yaml create mode 100644 stable/meshcentral/14.1.13/templates/_secret.tpl create mode 100644 stable/meshcentral/14.1.13/templates/common.yaml rename stable/{sourcegraph/4.1.11 => meshcentral/14.1.13}/values.yaml (100%) create mode 100644 stable/nextcloud/28.1.30/CHANGELOG.md create mode 100644 stable/nextcloud/28.1.30/Chart.yaml rename stable/{seafile/4.1.14 => nextcloud/28.1.30}/LICENSE (100%) create mode 100644 stable/nextcloud/28.1.30/README.md create mode 100644 stable/nextcloud/28.1.30/app-changelog.md create mode 100644 stable/nextcloud/28.1.30/app-readme.md create mode 100644 stable/nextcloud/28.1.30/charts/common-17.2.29.tgz rename stable/{paperless-ngx/6.4.6 => nextcloud/28.1.30}/charts/redis-11.1.16.tgz (100%) create mode 100644 stable/nextcloud/28.1.30/ix_values.yaml create mode 100644 stable/nextcloud/28.1.30/questions.yaml rename stable/{splunk/6.1.10 => nextcloud/28.1.30}/templates/NOTES.txt (100%) create mode 100644 stable/nextcloud/28.1.30/templates/_configmap.tpl create mode 100644 stable/nextcloud/28.1.30/templates/_cronjobs.tpl create mode 100644 stable/nextcloud/28.1.30/templates/_ingressInjector.tpl create mode 100644 stable/nextcloud/28.1.30/templates/_initPerms.tpl create mode 100644 stable/nextcloud/28.1.30/templates/_validation.tpl create mode 100644 stable/nextcloud/28.1.30/templates/_waitNextcloud.tpl create mode 100644 stable/nextcloud/28.1.30/templates/common.yaml rename stable/{splunk/6.1.10 => nextcloud/28.1.30}/values.yaml (100%) delete mode 100644 stable/paperless-ngx/6.4.6/app-changelog.md rename stable/paperless-ngx/{6.4.6 => 6.4.7}/CHANGELOG.md (92%) rename stable/paperless-ngx/{6.4.6 => 6.4.7}/Chart.yaml (97%) rename stable/paperless-ngx/{6.4.6 => 6.4.7}/README.md (100%) create mode 100644 stable/paperless-ngx/6.4.7/app-changelog.md rename stable/paperless-ngx/{6.4.6 => 6.4.7}/app-readme.md (100%) create mode 100644 stable/paperless-ngx/6.4.7/charts/common-17.2.29.tgz create mode 100644 stable/paperless-ngx/6.4.7/charts/redis-11.1.16.tgz rename stable/paperless-ngx/{6.4.6 => 6.4.7}/ix_values.yaml (96%) rename stable/paperless-ngx/{6.4.6 => 6.4.7}/questions.yaml (100%) create mode 100644 stable/paperless-ngx/6.4.7/templates/NOTES.txt rename stable/paperless-ngx/{6.4.6 => 6.4.7}/templates/_secrets.tpl (100%) rename stable/paperless-ngx/{6.4.6 => 6.4.7}/templates/common.yaml (100%) create mode 100644 stable/paperless-ngx/6.4.7/values.yaml create mode 100644 stable/readarr/19.1.14/CHANGELOG.md create mode 100644 stable/readarr/19.1.14/Chart.yaml create mode 100644 stable/readarr/19.1.14/README.md create mode 100644 stable/readarr/19.1.14/app-changelog.md create mode 100644 stable/readarr/19.1.14/app-readme.md create mode 100644 stable/readarr/19.1.14/charts/common-17.2.29.tgz create mode 100644 stable/readarr/19.1.14/ix_values.yaml create mode 100644 stable/readarr/19.1.14/questions.yaml create mode 100644 stable/readarr/19.1.14/templates/NOTES.txt create mode 100644 stable/readarr/19.1.14/templates/common.yaml create mode 100644 stable/readarr/19.1.14/values.yaml delete mode 100644 stable/seafile/4.1.14/app-changelog.md rename stable/seafile/{4.1.14 => 4.1.15}/CHANGELOG.md (89%) rename stable/seafile/{4.1.14 => 4.1.15}/Chart.yaml (97%) create mode 100644 stable/seafile/4.1.15/LICENSE rename stable/seafile/{4.1.14 => 4.1.15}/README.md (100%) create mode 100644 stable/seafile/4.1.15/app-changelog.md rename stable/seafile/{4.1.14 => 4.1.15}/app-readme.md (100%) create mode 100644 stable/seafile/4.1.15/charts/common-17.2.29.tgz rename stable/seafile/{4.1.14 => 4.1.15}/charts/mariadb-12.1.12.tgz (100%) rename stable/seafile/{4.1.14 => 4.1.15}/ix_values.yaml (93%) rename stable/seafile/{4.1.14 => 4.1.15}/questions.yaml (100%) create mode 100644 stable/seafile/4.1.15/templates/NOTES.txt create mode 100644 stable/seafile/4.1.15/templates/common.yaml create mode 100644 stable/seafile/4.1.15/values.yaml delete mode 100644 stable/sourcegraph/4.1.11/app-changelog.md rename stable/sourcegraph/{4.1.11 => 4.1.12}/CHANGELOG.md (85%) rename stable/sourcegraph/{4.1.11 => 4.1.12}/Chart.yaml (96%) rename stable/sourcegraph/{4.1.11 => 4.1.12}/README.md (100%) create mode 100644 stable/sourcegraph/4.1.12/app-changelog.md rename stable/sourcegraph/{4.1.11 => 4.1.12}/app-readme.md (100%) create mode 100644 stable/sourcegraph/4.1.12/charts/common-17.2.29.tgz rename stable/sourcegraph/{4.1.11 => 4.1.12}/ix_values.yaml (90%) rename stable/sourcegraph/{4.1.11 => 4.1.12}/questions.yaml (100%) rename stable/sourcegraph/{4.1.11 => 4.1.12}/templates/common.yaml (100%) create mode 100644 stable/sourcegraph/4.1.12/values.yaml delete mode 100644 stable/splunk/6.1.10/app-changelog.md rename stable/splunk/{6.1.10 => 6.1.11}/CHANGELOG.md (87%) rename stable/splunk/{6.1.10 => 6.1.11}/Chart.yaml (96%) rename stable/splunk/{6.1.10 => 6.1.11}/README.md (100%) create mode 100644 stable/splunk/6.1.11/app-changelog.md rename stable/splunk/{6.1.10 => 6.1.11}/app-readme.md (100%) create mode 100644 stable/splunk/6.1.11/charts/common-17.2.29.tgz rename stable/splunk/{6.1.10 => 6.1.11}/ix_values.yaml (93%) rename stable/splunk/{6.1.10 => 6.1.11}/questions.yaml (100%) create mode 100644 stable/splunk/6.1.11/templates/NOTES.txt rename stable/splunk/{6.1.10 => 6.1.11}/templates/_config.tpl (100%) rename stable/splunk/{6.1.10 => 6.1.11}/templates/common.yaml (100%) create mode 100644 stable/splunk/6.1.11/values.yaml diff --git a/stable/collabora/4.1.13/app-changelog.md b/stable/collabora/4.1.13/app-changelog.md deleted file mode 100644 index 0a6fd4f599..0000000000 --- a/stable/collabora/4.1.13/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [collabora-4.1.13](https://github.com/truecharts/charts/compare/collabora-4.1.12...collabora-4.1.13) (2024-01-26) - -### Chore - - - -- update container image collabora/code to v[@a05c505](https://github.com/a05c505) by renovate ([#17540](https://github.com/truecharts/charts/issues/17540)) \ No newline at end of file diff --git a/stable/collabora/4.1.13/charts/common-17.2.28.tgz b/stable/collabora/4.1.13/charts/common-17.2.28.tgz deleted file mode 100644 index 695e0d5cea93b36880b7021045bd1ef00dfe5915..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 98029 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 diff --git a/stable/collabora/4.1.13/CHANGELOG.md b/stable/collabora/4.1.14/CHANGELOG.md similarity index 84% rename from stable/collabora/4.1.13/CHANGELOG.md rename to stable/collabora/4.1.14/CHANGELOG.md index f7aacb19b9..bcf8a194ea 100644 --- a/stable/collabora/4.1.13/CHANGELOG.md +++ b/stable/collabora/4.1.14/CHANGELOG.md @@ -7,6 +7,17 @@ title: Changelog +## [collabora-4.1.14](https://github.com/truecharts/charts/compare/collabora-4.1.13...collabora-4.1.14) (2024-01-29) + +### Chore + + + +- update container image collabora/code to v23.05.8.2.1[@e294495](https://github.com/e294495) by renovate ([#17663](https://github.com/truecharts/charts/issues/17663)) + +- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) + + ## [collabora-4.1.13](https://github.com/truecharts/charts/compare/collabora-4.1.12...collabora-4.1.13) (2024-01-26) ### Chore @@ -86,14 +97,3 @@ title: Changelog ### Chore - -- bump common ([#16751](https://github.com/truecharts/charts/issues/16751)) - - -## [collabora-4.1.4](https://github.com/truecharts/charts/compare/collabora-4.1.3...collabora-4.1.4) (2024-01-01) - -### Chore - - - -- increase common version for oci fixes diff --git a/stable/collabora/4.1.13/Chart.yaml b/stable/collabora/4.1.14/Chart.yaml similarity index 94% rename from stable/collabora/4.1.13/Chart.yaml rename to stable/collabora/4.1.14/Chart.yaml index 620ab482ef..f26e1adb3b 100644 --- a/stable/collabora/4.1.13/Chart.yaml +++ b/stable/collabora/4.1.14/Chart.yaml @@ -7,10 +7,10 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 23.05.7.5.1 +appVersion: 23.05.8.2.1 dependencies: - name: common - version: 17.2.28 + version: 17.2.29 repository: oci://tccr.io/truecharts condition: "" alias: "" @@ -34,4 +34,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/collabora - https://hub.docker.com/r/collabora/code type: application -version: 4.1.13 +version: 4.1.14 diff --git a/stable/collabora/4.1.13/README.md b/stable/collabora/4.1.14/README.md similarity index 100% rename from stable/collabora/4.1.13/README.md rename to stable/collabora/4.1.14/README.md diff --git a/stable/collabora/4.1.14/app-changelog.md b/stable/collabora/4.1.14/app-changelog.md new file mode 100644 index 0000000000..5901749723 --- /dev/null +++ b/stable/collabora/4.1.14/app-changelog.md @@ -0,0 +1,11 @@ + + +## [collabora-4.1.14](https://github.com/truecharts/charts/compare/collabora-4.1.13...collabora-4.1.14) (2024-01-29) + +### Chore + + + +- update container image collabora/code to v23.05.8.2.1[@e294495](https://github.com/e294495) by renovate ([#17663](https://github.com/truecharts/charts/issues/17663)) + +- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) \ No newline at end of file diff --git a/stable/collabora/4.1.13/app-readme.md b/stable/collabora/4.1.14/app-readme.md similarity index 100% rename from stable/collabora/4.1.13/app-readme.md rename to stable/collabora/4.1.14/app-readme.md diff --git a/stable/dashdot/7.3.3/charts/common-17.2.29.tgz b/stable/collabora/4.1.14/charts/common-17.2.29.tgz similarity index 100% rename from stable/dashdot/7.3.3/charts/common-17.2.29.tgz rename to stable/collabora/4.1.14/charts/common-17.2.29.tgz diff --git a/stable/collabora/4.1.13/ix_values.yaml b/stable/collabora/4.1.14/ix_values.yaml similarity index 92% rename from stable/collabora/4.1.13/ix_values.yaml rename to stable/collabora/4.1.14/ix_values.yaml index f00655816b..52ac65c9f4 100644 --- a/stable/collabora/4.1.13/ix_values.yaml +++ b/stable/collabora/4.1.14/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: collabora/code pullPolicy: IfNotPresent - tag: 23.05.7.5.1@sha256:a05c5058aa9e37e4fc1ec4b7bc874a063d0c9abe5b715a9c2a5d2c9fa8c34379 + tag: 23.05.8.2.1@sha256:e294495969e832379ecf1dada7c973a726be61c6ea716aa2043d65f162ce2229 collabora: username: admin password: changeme diff --git a/stable/collabora/4.1.13/questions.yaml b/stable/collabora/4.1.14/questions.yaml similarity index 100% rename from stable/collabora/4.1.13/questions.yaml rename to stable/collabora/4.1.14/questions.yaml diff --git a/stable/collabora/4.1.13/templates/NOTES.txt b/stable/collabora/4.1.14/templates/NOTES.txt similarity index 100% rename from stable/collabora/4.1.13/templates/NOTES.txt rename to stable/collabora/4.1.14/templates/NOTES.txt diff --git a/stable/collabora/4.1.13/templates/_configmap.tpl b/stable/collabora/4.1.14/templates/_configmap.tpl similarity index 100% rename from stable/collabora/4.1.13/templates/_configmap.tpl rename to stable/collabora/4.1.14/templates/_configmap.tpl diff --git a/stable/collabora/4.1.13/templates/common.yaml b/stable/collabora/4.1.14/templates/common.yaml similarity index 100% rename from stable/collabora/4.1.13/templates/common.yaml rename to stable/collabora/4.1.14/templates/common.yaml diff --git a/stable/collabora/4.1.13/values.yaml b/stable/collabora/4.1.14/values.yaml similarity index 100% rename from stable/collabora/4.1.13/values.yaml rename to stable/collabora/4.1.14/values.yaml diff --git a/stable/dashdot/7.3.3/app-changelog.md b/stable/dashdot/7.3.3/app-changelog.md deleted file mode 100644 index ebc3dca69a..0000000000 --- a/stable/dashdot/7.3.3/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [dashdot-7.3.3](https://github.com/truecharts/charts/compare/dashdot-7.3.2...dashdot-7.3.3) (2024-01-26) - -### Chore - - - -- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) \ No newline at end of file diff --git a/stable/dashdot/7.3.3/CHANGELOG.md b/stable/dashdot/7.3.4/CHANGELOG.md similarity index 90% rename from stable/dashdot/7.3.3/CHANGELOG.md rename to stable/dashdot/7.3.4/CHANGELOG.md index 4c03891849..3674666d7f 100644 --- a/stable/dashdot/7.3.3/CHANGELOG.md +++ b/stable/dashdot/7.3.4/CHANGELOG.md @@ -7,6 +7,15 @@ title: Changelog +## [dashdot-7.3.4](https://github.com/truecharts/charts/compare/dashdot-7.3.3...dashdot-7.3.4) (2024-01-29) + +### Chore + + + +- update container image mauricenino/dashdot to v5.8.3[@d78f64c](https://github.com/d78f64c) by renovate ([#17680](https://github.com/truecharts/charts/issues/17680)) + + ## [dashdot-7.3.3](https://github.com/truecharts/charts/compare/dashdot-7.3.2...dashdot-7.3.3) (2024-01-26) ### Chore @@ -88,12 +97,3 @@ title: Changelog - update container image mauricenino/dashdot to v5.5.0[@3fca6d7](https://github.com/3fca6d7) by renovate ([#17021](https://github.com/truecharts/charts/issues/17021)) -## [dashdot-7.1.6](https://github.com/truecharts/charts/compare/dashdot-7.1.5...dashdot-7.1.6) (2024-01-02) - -### Chore - - - -- force bump to ensure up-to-date catalogs - - diff --git a/stable/dashdot/7.3.3/Chart.yaml b/stable/dashdot/7.3.4/Chart.yaml similarity index 96% rename from stable/dashdot/7.3.3/Chart.yaml rename to stable/dashdot/7.3.4/Chart.yaml index 69df51ac8e..5000814c5e 100644 --- a/stable/dashdot/7.3.3/Chart.yaml +++ b/stable/dashdot/7.3.4/Chart.yaml @@ -7,7 +7,7 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 5.8.2 +appVersion: 5.8.3 dependencies: - name: common version: 17.2.29 @@ -34,4 +34,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/dashdot - https://hub.docker.com/r/mauricenino/dashdot type: application -version: 7.3.3 +version: 7.3.4 diff --git a/stable/dashdot/7.3.3/README.md b/stable/dashdot/7.3.4/README.md similarity index 100% rename from stable/dashdot/7.3.3/README.md rename to stable/dashdot/7.3.4/README.md diff --git a/stable/dashdot/7.3.4/app-changelog.md b/stable/dashdot/7.3.4/app-changelog.md new file mode 100644 index 0000000000..30bd2fd20d --- /dev/null +++ b/stable/dashdot/7.3.4/app-changelog.md @@ -0,0 +1,9 @@ + + +## [dashdot-7.3.4](https://github.com/truecharts/charts/compare/dashdot-7.3.3...dashdot-7.3.4) (2024-01-29) + +### Chore + + + +- update container image mauricenino/dashdot to v5.8.3[@d78f64c](https://github.com/d78f64c) by renovate ([#17680](https://github.com/truecharts/charts/issues/17680)) \ No newline at end of file diff --git a/stable/dashdot/7.3.3/app-readme.md b/stable/dashdot/7.3.4/app-readme.md similarity index 100% rename from stable/dashdot/7.3.3/app-readme.md rename to stable/dashdot/7.3.4/app-readme.md diff --git a/stable/drawio/8.1.15/charts/common-17.2.29.tgz b/stable/dashdot/7.3.4/charts/common-17.2.29.tgz similarity index 100% rename from stable/drawio/8.1.15/charts/common-17.2.29.tgz rename to stable/dashdot/7.3.4/charts/common-17.2.29.tgz diff --git a/stable/dashdot/7.3.3/ix_values.yaml b/stable/dashdot/7.3.4/ix_values.yaml similarity index 97% rename from stable/dashdot/7.3.3/ix_values.yaml rename to stable/dashdot/7.3.4/ix_values.yaml index 24cb763cd8..815c657668 100644 --- a/stable/dashdot/7.3.3/ix_values.yaml +++ b/stable/dashdot/7.3.4/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: mauricenino/dashdot - tag: 5.8.2@sha256:1ff18b1cdbad26791482ddd80be12bc905e4548b7d68b88386b44488bfc51706 + tag: 5.8.3@sha256:d78f64ccdd92b769794c8ff79d9e27509c4482b8e3d342aa04cd772b3dbd7b74 pullPolicy: IfNotPresent securityContext: container: diff --git a/stable/dashdot/7.3.3/questions.yaml b/stable/dashdot/7.3.4/questions.yaml similarity index 100% rename from stable/dashdot/7.3.3/questions.yaml rename to stable/dashdot/7.3.4/questions.yaml diff --git a/stable/dashdot/7.3.3/templates/NOTES.txt b/stable/dashdot/7.3.4/templates/NOTES.txt similarity index 100% rename from stable/dashdot/7.3.3/templates/NOTES.txt rename to stable/dashdot/7.3.4/templates/NOTES.txt diff --git a/stable/dashdot/7.3.3/templates/common.yaml b/stable/dashdot/7.3.4/templates/common.yaml similarity index 100% rename from stable/dashdot/7.3.3/templates/common.yaml rename to stable/dashdot/7.3.4/templates/common.yaml diff --git a/stable/dashdot/7.3.3/values.yaml b/stable/dashdot/7.3.4/values.yaml similarity index 100% rename from stable/dashdot/7.3.3/values.yaml rename to stable/dashdot/7.3.4/values.yaml diff --git a/stable/drawio/8.1.15/app-changelog.md b/stable/drawio/8.1.15/app-changelog.md deleted file mode 100644 index 827ac6c2b1..0000000000 --- a/stable/drawio/8.1.15/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [drawio-8.1.15](https://github.com/truecharts/charts/compare/drawio-8.1.14...drawio-8.1.15) (2024-01-26) - -### Chore - - - -- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) \ No newline at end of file diff --git a/stable/drawio/8.1.15/CHANGELOG.md b/stable/drawio/8.1.16/CHANGELOG.md similarity index 90% rename from stable/drawio/8.1.15/CHANGELOG.md rename to stable/drawio/8.1.16/CHANGELOG.md index 172c3167c2..51ee49f830 100644 --- a/stable/drawio/8.1.15/CHANGELOG.md +++ b/stable/drawio/8.1.16/CHANGELOG.md @@ -7,6 +7,15 @@ title: Changelog +## [drawio-8.1.16](https://github.com/truecharts/charts/compare/drawio-8.1.15...drawio-8.1.16) (2024-01-29) + +### Chore + + + +- update container image jgraph/drawio to v22.1.22[@3dcd10a](https://github.com/3dcd10a) by renovate ([#17679](https://github.com/truecharts/charts/issues/17679)) + + ## [drawio-8.1.15](https://github.com/truecharts/charts/compare/drawio-8.1.14...drawio-8.1.15) (2024-01-26) ### Chore @@ -88,12 +97,3 @@ title: Changelog - force bump to ensure up-to-date catalogs - - -## [drawio-8.1.6](https://github.com/truecharts/charts/compare/drawio-8.1.5...drawio-8.1.6) (2024-01-02) - -### Chore - - - -- bump common ([#16751](https://github.com/truecharts/charts/issues/16751)) diff --git a/stable/drawio/8.1.15/Chart.yaml b/stable/drawio/8.1.16/Chart.yaml similarity index 96% rename from stable/drawio/8.1.15/Chart.yaml rename to stable/drawio/8.1.16/Chart.yaml index c11174264e..b13968dfa2 100644 --- a/stable/drawio/8.1.15/Chart.yaml +++ b/stable/drawio/8.1.16/Chart.yaml @@ -7,7 +7,7 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 22.1.21 +appVersion: 22.1.22 dependencies: - name: common version: 17.2.29 @@ -33,4 +33,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/drawio - https://hub.docker.com/r/jgraph/drawio type: application -version: 8.1.15 +version: 8.1.16 diff --git a/stable/drawio/8.1.15/README.md b/stable/drawio/8.1.16/README.md similarity index 100% rename from stable/drawio/8.1.15/README.md rename to stable/drawio/8.1.16/README.md diff --git a/stable/drawio/8.1.16/app-changelog.md b/stable/drawio/8.1.16/app-changelog.md new file mode 100644 index 0000000000..43090fd749 --- /dev/null +++ b/stable/drawio/8.1.16/app-changelog.md @@ -0,0 +1,9 @@ + + +## [drawio-8.1.16](https://github.com/truecharts/charts/compare/drawio-8.1.15...drawio-8.1.16) (2024-01-29) + +### Chore + + + +- update container image jgraph/drawio to v22.1.22[@3dcd10a](https://github.com/3dcd10a) by renovate ([#17679](https://github.com/truecharts/charts/issues/17679)) \ No newline at end of file diff --git a/stable/drawio/8.1.15/app-readme.md b/stable/drawio/8.1.16/app-readme.md similarity index 100% rename from stable/drawio/8.1.15/app-readme.md rename to stable/drawio/8.1.16/app-readme.md diff --git a/stable/emulatorjs/8.2.9/charts/common-17.2.29.tgz b/stable/drawio/8.1.16/charts/common-17.2.29.tgz similarity index 100% rename from stable/emulatorjs/8.2.9/charts/common-17.2.29.tgz rename to stable/drawio/8.1.16/charts/common-17.2.29.tgz diff --git a/stable/drawio/8.1.15/ix_values.yaml b/stable/drawio/8.1.16/ix_values.yaml similarity index 87% rename from stable/drawio/8.1.15/ix_values.yaml rename to stable/drawio/8.1.16/ix_values.yaml index a194393f74..51bde9fee4 100644 --- a/stable/drawio/8.1.15/ix_values.yaml +++ b/stable/drawio/8.1.16/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: jgraph/drawio - tag: 22.1.21@sha256:6801e6e3d3ad44f929b9df9e8cbe5c049480a3c233f955ba0f86c0879d35eef3 + tag: 22.1.22@sha256:3dcd10a4a881a9871fe0ad648de91261efc0f65bd54354c1ba937f3d2d06eddd pullPolicy: IfNotPresent securityContext: container: diff --git a/stable/drawio/8.1.15/questions.yaml b/stable/drawio/8.1.16/questions.yaml similarity index 100% rename from stable/drawio/8.1.15/questions.yaml rename to stable/drawio/8.1.16/questions.yaml diff --git a/stable/drawio/8.1.15/templates/NOTES.txt b/stable/drawio/8.1.16/templates/NOTES.txt similarity index 100% rename from stable/drawio/8.1.15/templates/NOTES.txt rename to stable/drawio/8.1.16/templates/NOTES.txt diff --git a/stable/drawio/8.1.15/templates/common.yaml b/stable/drawio/8.1.16/templates/common.yaml similarity index 100% rename from stable/drawio/8.1.15/templates/common.yaml rename to stable/drawio/8.1.16/templates/common.yaml diff --git a/stable/drawio/8.1.15/values.yaml b/stable/drawio/8.1.16/values.yaml similarity index 100% rename from stable/drawio/8.1.15/values.yaml rename to stable/drawio/8.1.16/values.yaml diff --git a/stable/emulatorjs/8.2.9/CHANGELOG.md b/stable/emulatorjs/8.2.10/CHANGELOG.md similarity index 92% rename from stable/emulatorjs/8.2.9/CHANGELOG.md rename to stable/emulatorjs/8.2.10/CHANGELOG.md index 56a727fe5a..e16cd94359 100644 --- a/stable/emulatorjs/8.2.9/CHANGELOG.md +++ b/stable/emulatorjs/8.2.10/CHANGELOG.md @@ -7,6 +7,15 @@ title: Changelog +## [emulatorjs-8.2.10](https://github.com/truecharts/charts/compare/emulatorjs-8.2.9...emulatorjs-8.2.10) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/linuxserver/emulatorjs to v1.8.5[@f2a8a9a](https://github.com/f2a8a9a) by renovate ([#17672](https://github.com/truecharts/charts/issues/17672)) + + ## [emulatorjs-8.2.9](https://github.com/truecharts/charts/compare/emulatorjs-8.2.8...emulatorjs-8.2.9) (2024-01-26) ### Chore @@ -88,12 +97,3 @@ title: Changelog - update container image common to v17.2.22[@e7c9056](https://github.com/e7c9056) by renovate ([#16986](https://github.com/truecharts/charts/issues/16986)) - - -## [emulatorjs-8.2.0](https://github.com/truecharts/charts/compare/emulatorjs-8.1.8...emulatorjs-8.2.0) (2024-01-08) - -### Chore - - - -- update container image ghcr.io/linuxserver/emulatorjs to v1.8.0[@7ce3ecf](https://github.com/7ce3ecf) by renovate ([#17014](https://github.com/truecharts/charts/issues/17014)) diff --git a/stable/emulatorjs/8.2.9/Chart.yaml b/stable/emulatorjs/8.2.10/Chart.yaml similarity index 96% rename from stable/emulatorjs/8.2.9/Chart.yaml rename to stable/emulatorjs/8.2.10/Chart.yaml index 9a1328722f..d773ee166b 100644 --- a/stable/emulatorjs/8.2.9/Chart.yaml +++ b/stable/emulatorjs/8.2.10/Chart.yaml @@ -7,7 +7,7 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 1.8.2 +appVersion: 1.8.5 dependencies: - name: common version: 17.2.29 @@ -32,4 +32,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/emulatorjs - https://ghcr.io/linuxserver/emulatorjs type: application -version: 8.2.9 +version: 8.2.10 diff --git a/stable/emulatorjs/8.2.9/README.md b/stable/emulatorjs/8.2.10/README.md similarity index 100% rename from stable/emulatorjs/8.2.9/README.md rename to stable/emulatorjs/8.2.10/README.md diff --git a/stable/emulatorjs/8.2.10/app-changelog.md b/stable/emulatorjs/8.2.10/app-changelog.md new file mode 100644 index 0000000000..c7666e30f0 --- /dev/null +++ b/stable/emulatorjs/8.2.10/app-changelog.md @@ -0,0 +1,9 @@ + + +## [emulatorjs-8.2.10](https://github.com/truecharts/charts/compare/emulatorjs-8.2.9...emulatorjs-8.2.10) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/linuxserver/emulatorjs to v1.8.5[@f2a8a9a](https://github.com/f2a8a9a) by renovate ([#17672](https://github.com/truecharts/charts/issues/17672)) \ No newline at end of file diff --git a/stable/emulatorjs/8.2.9/app-readme.md b/stable/emulatorjs/8.2.10/app-readme.md similarity index 100% rename from stable/emulatorjs/8.2.9/app-readme.md rename to stable/emulatorjs/8.2.10/app-readme.md diff --git a/stable/flexget/8.2.13/charts/common-17.2.29.tgz b/stable/emulatorjs/8.2.10/charts/common-17.2.29.tgz similarity index 100% rename from stable/flexget/8.2.13/charts/common-17.2.29.tgz rename to stable/emulatorjs/8.2.10/charts/common-17.2.29.tgz diff --git a/stable/emulatorjs/8.2.9/ix_values.yaml b/stable/emulatorjs/8.2.10/ix_values.yaml similarity index 92% rename from stable/emulatorjs/8.2.9/ix_values.yaml rename to stable/emulatorjs/8.2.10/ix_values.yaml index fd5a5b8e5e..34e8ae3dc9 100644 --- a/stable/emulatorjs/8.2.9/ix_values.yaml +++ b/stable/emulatorjs/8.2.10/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: ghcr.io/linuxserver/emulatorjs pullPolicy: IfNotPresent - tag: 1.8.2@sha256:05c6237d35398df7314dbf5b45965eaea3b3d77fce79dada2851e6ee3874f2d9 + tag: 1.8.5@sha256:f2a8a9ae48a1a3f0b4242ac217685338d07638a5ebcb64994916a1569a6d813e securityContext: container: runAsNonRoot: false diff --git a/stable/emulatorjs/8.2.9/questions.yaml b/stable/emulatorjs/8.2.10/questions.yaml similarity index 100% rename from stable/emulatorjs/8.2.9/questions.yaml rename to stable/emulatorjs/8.2.10/questions.yaml diff --git a/stable/emulatorjs/8.2.9/templates/NOTES.txt b/stable/emulatorjs/8.2.10/templates/NOTES.txt similarity index 100% rename from stable/emulatorjs/8.2.9/templates/NOTES.txt rename to stable/emulatorjs/8.2.10/templates/NOTES.txt diff --git a/stable/emulatorjs/8.2.9/templates/common.yaml b/stable/emulatorjs/8.2.10/templates/common.yaml similarity index 100% rename from stable/emulatorjs/8.2.9/templates/common.yaml rename to stable/emulatorjs/8.2.10/templates/common.yaml diff --git a/stable/emulatorjs/8.2.9/values.yaml b/stable/emulatorjs/8.2.10/values.yaml similarity index 100% rename from stable/emulatorjs/8.2.9/values.yaml rename to stable/emulatorjs/8.2.10/values.yaml diff --git a/stable/emulatorjs/8.2.9/app-changelog.md b/stable/emulatorjs/8.2.9/app-changelog.md deleted file mode 100644 index 58bd76b017..0000000000 --- a/stable/emulatorjs/8.2.9/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [emulatorjs-8.2.9](https://github.com/truecharts/charts/compare/emulatorjs-8.2.8...emulatorjs-8.2.9) (2024-01-26) - -### Chore - - - -- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) \ No newline at end of file diff --git a/stable/flexget/8.2.13/app-changelog.md b/stable/flexget/8.2.13/app-changelog.md deleted file mode 100644 index 433738d0cd..0000000000 --- a/stable/flexget/8.2.13/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [flexget-8.2.13](https://github.com/truecharts/charts/compare/flexget-8.2.12...flexget-8.2.13) (2024-01-26) - -### Chore - - - -- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) \ No newline at end of file diff --git a/stable/flexget/8.2.13/CHANGELOG.md b/stable/flexget/8.2.14/CHANGELOG.md similarity index 90% rename from stable/flexget/8.2.13/CHANGELOG.md rename to stable/flexget/8.2.14/CHANGELOG.md index aeae9436e9..3f2be10d0d 100644 --- a/stable/flexget/8.2.13/CHANGELOG.md +++ b/stable/flexget/8.2.14/CHANGELOG.md @@ -7,6 +7,15 @@ title: Changelog +## [flexget-8.2.14](https://github.com/truecharts/charts/compare/flexget-8.2.13...flexget-8.2.14) (2024-01-29) + +### Chore + + + +- update container image wiserain/flexget to v3.11.12[@f20da4e](https://github.com/f20da4e) by renovate ([#17685](https://github.com/truecharts/charts/issues/17685)) + + ## [flexget-8.2.13](https://github.com/truecharts/charts/compare/flexget-8.2.12...flexget-8.2.13) (2024-01-26) ### Chore @@ -88,12 +97,3 @@ title: Changelog - force bump to ensure up-to-date catalogs - - -## [flexget-8.2.4](https://github.com/truecharts/charts/compare/flexget-8.2.3...flexget-8.2.4) (2024-01-01) - -### Chore - - - -- increase common version for oci fixes diff --git a/stable/flexget/8.2.13/Chart.yaml b/stable/flexget/8.2.14/Chart.yaml similarity index 96% rename from stable/flexget/8.2.13/Chart.yaml rename to stable/flexget/8.2.14/Chart.yaml index ed2190d7d4..88da519eee 100644 --- a/stable/flexget/8.2.13/Chart.yaml +++ b/stable/flexget/8.2.14/Chart.yaml @@ -7,7 +7,7 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 3.11.10 +appVersion: 3.11.12 dependencies: - name: common version: 17.2.29 @@ -34,4 +34,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/flexget - https://hub.docker.com/r/wiserain/flexget type: application -version: 8.2.13 +version: 8.2.14 diff --git a/stable/flexget/8.2.13/README.md b/stable/flexget/8.2.14/README.md similarity index 100% rename from stable/flexget/8.2.13/README.md rename to stable/flexget/8.2.14/README.md diff --git a/stable/flexget/8.2.14/app-changelog.md b/stable/flexget/8.2.14/app-changelog.md new file mode 100644 index 0000000000..f0616f6d8d --- /dev/null +++ b/stable/flexget/8.2.14/app-changelog.md @@ -0,0 +1,9 @@ + + +## [flexget-8.2.14](https://github.com/truecharts/charts/compare/flexget-8.2.13...flexget-8.2.14) (2024-01-29) + +### Chore + + + +- update container image wiserain/flexget to v3.11.12[@f20da4e](https://github.com/f20da4e) by renovate ([#17685](https://github.com/truecharts/charts/issues/17685)) \ No newline at end of file diff --git a/stable/flexget/8.2.13/app-readme.md b/stable/flexget/8.2.14/app-readme.md similarity index 100% rename from stable/flexget/8.2.13/app-readme.md rename to stable/flexget/8.2.14/app-readme.md diff --git a/stable/flowise/3.1.13/charts/common-17.2.29.tgz b/stable/flexget/8.2.14/charts/common-17.2.29.tgz similarity index 100% rename from stable/flowise/3.1.13/charts/common-17.2.29.tgz rename to stable/flexget/8.2.14/charts/common-17.2.29.tgz diff --git a/stable/flexget/8.2.13/ix_values.yaml b/stable/flexget/8.2.14/ix_values.yaml similarity index 90% rename from stable/flexget/8.2.13/ix_values.yaml rename to stable/flexget/8.2.14/ix_values.yaml index 7b576e94d3..9f9db40934 100644 --- a/stable/flexget/8.2.13/ix_values.yaml +++ b/stable/flexget/8.2.14/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: wiserain/flexget pullPolicy: IfNotPresent - tag: 3.11.10@sha256:ba719072b2fe32777fdafe2ac2b284434f364a2065428a6059086a7b681909b0 + tag: 3.11.12@sha256:f20da4edbe20e7786b66fd6294d7049fb3a0c9db055dd55699a6fec24433a308 securityContext: container: runAsNonRoot: false diff --git a/stable/flexget/8.2.13/questions.yaml b/stable/flexget/8.2.14/questions.yaml similarity index 100% rename from stable/flexget/8.2.13/questions.yaml rename to stable/flexget/8.2.14/questions.yaml diff --git a/stable/flexget/8.2.13/templates/NOTES.txt b/stable/flexget/8.2.14/templates/NOTES.txt similarity index 100% rename from stable/flexget/8.2.13/templates/NOTES.txt rename to stable/flexget/8.2.14/templates/NOTES.txt diff --git a/stable/flexget/8.2.13/templates/common.yaml b/stable/flexget/8.2.14/templates/common.yaml similarity index 100% rename from stable/flexget/8.2.13/templates/common.yaml rename to stable/flexget/8.2.14/templates/common.yaml diff --git a/stable/flexget/8.2.13/values.yaml b/stable/flexget/8.2.14/values.yaml similarity index 100% rename from stable/flexget/8.2.13/values.yaml rename to stable/flexget/8.2.14/values.yaml diff --git a/stable/flowise/3.1.13/app-changelog.md b/stable/flowise/3.1.13/app-changelog.md deleted file mode 100644 index 80f05c4bd2..0000000000 --- a/stable/flowise/3.1.13/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [flowise-3.1.13](https://github.com/truecharts/charts/compare/flowise-3.1.12...flowise-3.1.13) (2024-01-26) - -### Chore - - - -- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) \ No newline at end of file diff --git a/stable/flowise/3.1.13/CHANGELOG.md b/stable/flowise/3.1.14/CHANGELOG.md similarity index 89% rename from stable/flowise/3.1.13/CHANGELOG.md rename to stable/flowise/3.1.14/CHANGELOG.md index c33e5e4b18..c17149cd7a 100644 --- a/stable/flowise/3.1.13/CHANGELOG.md +++ b/stable/flowise/3.1.14/CHANGELOG.md @@ -7,6 +7,15 @@ title: Changelog +## [flowise-3.1.14](https://github.com/truecharts/charts/compare/flowise-3.1.13...flowise-3.1.14) (2024-01-29) + +### Chore + + + +- update container image flowiseai/flowise to v1.4.11[@a94511f](https://github.com/a94511f) by renovate ([#17668](https://github.com/truecharts/charts/issues/17668)) + + ## [flowise-3.1.13](https://github.com/truecharts/charts/compare/flowise-3.1.12...flowise-3.1.13) (2024-01-26) ### Chore @@ -88,12 +97,3 @@ title: Changelog - increase common version for oci fixes - -- remove non-existent template refs ([#16738](https://github.com/truecharts/charts/issues/16738)) - - -## [flowise-3.1.4](https://github.com/truecharts/charts/compare/flowise-3.1.1...flowise-3.1.4) (2024-01-01) - -### Chore - - diff --git a/stable/flowise/3.1.13/Chart.yaml b/stable/flowise/3.1.14/Chart.yaml similarity index 96% rename from stable/flowise/3.1.13/Chart.yaml rename to stable/flowise/3.1.14/Chart.yaml index 0fde9ea0ed..f00fe2f400 100644 --- a/stable/flowise/3.1.13/Chart.yaml +++ b/stable/flowise/3.1.14/Chart.yaml @@ -7,7 +7,7 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 1.4.10 +appVersion: 1.4.11 dependencies: - name: common version: 17.2.29 @@ -34,4 +34,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/flowise - https://hub.docker.com/r/flowiseai/flowise type: application -version: 3.1.13 +version: 3.1.14 diff --git a/stable/flowise/3.1.13/README.md b/stable/flowise/3.1.14/README.md similarity index 100% rename from stable/flowise/3.1.13/README.md rename to stable/flowise/3.1.14/README.md diff --git a/stable/flowise/3.1.14/app-changelog.md b/stable/flowise/3.1.14/app-changelog.md new file mode 100644 index 0000000000..521280fa27 --- /dev/null +++ b/stable/flowise/3.1.14/app-changelog.md @@ -0,0 +1,9 @@ + + +## [flowise-3.1.14](https://github.com/truecharts/charts/compare/flowise-3.1.13...flowise-3.1.14) (2024-01-29) + +### Chore + + + +- update container image flowiseai/flowise to v1.4.11[@a94511f](https://github.com/a94511f) by renovate ([#17668](https://github.com/truecharts/charts/issues/17668)) \ No newline at end of file diff --git a/stable/flowise/3.1.13/app-readme.md b/stable/flowise/3.1.14/app-readme.md similarity index 100% rename from stable/flowise/3.1.13/app-readme.md rename to stable/flowise/3.1.14/app-readme.md diff --git a/stable/paperless-ngx/6.4.6/charts/common-17.2.29.tgz b/stable/flowise/3.1.14/charts/common-17.2.29.tgz similarity index 100% rename from stable/paperless-ngx/6.4.6/charts/common-17.2.29.tgz rename to stable/flowise/3.1.14/charts/common-17.2.29.tgz diff --git a/stable/flowise/3.1.13/ix_values.yaml b/stable/flowise/3.1.14/ix_values.yaml similarity index 95% rename from stable/flowise/3.1.13/ix_values.yaml rename to stable/flowise/3.1.14/ix_values.yaml index 6537ba8b0f..52b0b2ea8a 100644 --- a/stable/flowise/3.1.13/ix_values.yaml +++ b/stable/flowise/3.1.14/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: flowiseai/flowise pullPolicy: IfNotPresent - tag: 1.4.10@sha256:9faed795787407a9282ac8b2aabff13b0e26e37e7afde2763f6d46a578c7524c + tag: 1.4.11@sha256:a94511f575c359ba8d1980bb8bdf379c7d4766810d6249a00f43e714077956f5 securityContext: container: runAsNonRoot: false diff --git a/stable/flowise/3.1.13/questions.yaml b/stable/flowise/3.1.14/questions.yaml similarity index 100% rename from stable/flowise/3.1.13/questions.yaml rename to stable/flowise/3.1.14/questions.yaml diff --git a/stable/flowise/3.1.13/templates/NOTES.txt b/stable/flowise/3.1.14/templates/NOTES.txt similarity index 100% rename from stable/flowise/3.1.13/templates/NOTES.txt rename to stable/flowise/3.1.14/templates/NOTES.txt diff --git a/stable/flowise/3.1.13/templates/_secrets.tpl b/stable/flowise/3.1.14/templates/_secrets.tpl similarity index 100% rename from stable/flowise/3.1.13/templates/_secrets.tpl rename to stable/flowise/3.1.14/templates/_secrets.tpl diff --git a/stable/flowise/3.1.13/templates/common.yaml b/stable/flowise/3.1.14/templates/common.yaml similarity index 100% rename from stable/flowise/3.1.13/templates/common.yaml rename to stable/flowise/3.1.14/templates/common.yaml diff --git a/stable/flowise/3.1.13/values.yaml b/stable/flowise/3.1.14/values.yaml similarity index 100% rename from stable/flowise/3.1.13/values.yaml rename to stable/flowise/3.1.14/values.yaml diff --git a/stable/healthchecks/13.1.16/CHANGELOG.md b/stable/healthchecks/13.1.16/CHANGELOG.md new file mode 100644 index 0000000000..0ec585da50 --- /dev/null +++ b/stable/healthchecks/13.1.16/CHANGELOG.md @@ -0,0 +1,99 @@ +--- +title: Changelog +--- + +**Important:** +*for the complete changelog, please refer to the website* + + + +## [healthchecks-13.1.16](https://github.com/truecharts/charts/compare/healthchecks-13.1.15...healthchecks-13.1.16) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/linuxserver/healthchecks to v3.1.20240128[@593017d](https://github.com/593017d) by renovate ([#17673](https://github.com/truecharts/charts/issues/17673)) + + +## [healthchecks-13.1.15](https://github.com/truecharts/charts/compare/healthchecks-13.1.14...healthchecks-13.1.15) (2024-01-26) + +### Chore + + + +- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) + + +## [healthchecks-13.1.14](https://github.com/truecharts/charts/compare/healthchecks-13.1.13...healthchecks-13.1.14) (2024-01-26) + +### Chore + + + +- update container image ghcr.io/linuxserver/healthchecks to v3.1.20240125[@4fa326d](https://github.com/4fa326d) by renovate ([#17548](https://github.com/truecharts/charts/issues/17548)) + + +## [healthchecks-13.1.13](https://github.com/truecharts/charts/compare/healthchecks-13.1.12...healthchecks-13.1.13) (2024-01-22) + +### Chore + + + +- update container image ghcr.io/linuxserver/healthchecks to v3.1.20240122[@2849f47](https://github.com/2849f47) by renovate ([#17507](https://github.com/truecharts/charts/issues/17507)) + + +## [healthchecks-13.1.12](https://github.com/truecharts/charts/compare/healthchecks-13.1.11...healthchecks-13.1.12) (2024-01-21) + +### Chore + + + +- update container image common to v17.2.28[@918b4c5](https://github.com/918b4c5) by renovate ([#17478](https://github.com/truecharts/charts/issues/17478)) + + +## [healthchecks-13.1.11](https://github.com/truecharts/charts/compare/healthchecks-13.1.10...healthchecks-13.1.11) (2024-01-21) + +### Chore + + + +- update container image common to v17.2.26[@24c98f7](https://github.com/24c98f7) by renovate ([#17409](https://github.com/truecharts/charts/issues/17409)) + + +## [healthchecks-13.1.10](https://github.com/truecharts/charts/compare/healthchecks-13.1.9...healthchecks-13.1.10) (2024-01-21) + +### Chore + + + +- update metadata in chart.yaml ([#17457](https://github.com/truecharts/charts/issues/17457)) + + +## [healthchecks-13.1.9](https://github.com/truecharts/charts/compare/healthchecks-13.1.8...healthchecks-13.1.9) (2024-01-15) + +### Chore + + + +- update container image ghcr.io/linuxserver/healthchecks to v3.1.20240115[@2f6312c](https://github.com/2f6312c) by renovate ([#17270](https://github.com/truecharts/charts/issues/17270)) + + + + +## [healthchecks-13.1.8](https://github.com/truecharts/charts/compare/healthchecks-13.1.7...healthchecks-13.1.8) (2024-01-09) + +### Chore + + + +- update container image common to v17.2.22[@e7c9056](https://github.com/e7c9056) by renovate ([#16986](https://github.com/truecharts/charts/issues/16986)) + + +## [healthchecks-13.1.7](https://github.com/truecharts/charts/compare/healthchecks-13.1.6...healthchecks-13.1.7) (2024-01-03) + +### Chore + + + +- update container image ghcr.io/linuxserver/healthchecks to v3.1.20240101[@f71485d](https://github.com/f71485d) by renovate ([#16726](https://github.com/truecharts/charts/issues/16726)) diff --git a/stable/healthchecks/13.1.16/Chart.yaml b/stable/healthchecks/13.1.16/Chart.yaml new file mode 100644 index 0000000000..051e8c2c1b --- /dev/null +++ b/stable/healthchecks/13.1.16/Chart.yaml @@ -0,0 +1,38 @@ +annotations: + max_scale_version: 23.10.2 + min_scale_version: 23.10.0 + truecharts.org/SCALE-support: "true" + truecharts.org/category: media + truecharts.org/max_helm_version: "3.14" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: stable +apiVersion: v2 +appVersion: 3.1.20240128 +dependencies: + - name: common + version: 17.2.29 + repository: oci://tccr.io/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] +deprecated: false +description: Healthchecks is a cron job monitoring service. It listens for HTTP requests and email messages ("pings") from your cron jobs and scheduled tasks ("checks"). When a ping does not arrive on time, Healthchecks sends out alerts. +home: https://truecharts.org/charts/stable/healthchecks +icon: https://truecharts.org/img/hotlink-ok/chart-icons/healthchecks.png +keywords: + - cron + - monitoring + - alert +kubeVersion: ">=1.24.0-0" +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: healthchecks +sources: + - https://github.com/healthchecks/healthchecks + - https://github.com/truecharts/charts/tree/master/charts/stable/healthchecks + - https://ghcr.io/linuxserver/healthchecks +type: application +version: 13.1.16 diff --git a/stable/healthchecks/13.1.16/README.md b/stable/healthchecks/13.1.16/README.md new file mode 100644 index 0000000000..b737915f4d --- /dev/null +++ b/stable/healthchecks/13.1.16/README.md @@ -0,0 +1,28 @@ +--- +title: README +--- + +## General Info + +TrueCharts can be installed as both _normal_ Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/stable/healthchecks) + +**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)** + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/charts/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/sponsor) or contributing back to the project any way you can! + +_All Rights Reserved - The TrueCharts Project_ diff --git a/stable/healthchecks/13.1.16/app-changelog.md b/stable/healthchecks/13.1.16/app-changelog.md new file mode 100644 index 0000000000..5c9bad2ed7 --- /dev/null +++ b/stable/healthchecks/13.1.16/app-changelog.md @@ -0,0 +1,9 @@ + + +## [healthchecks-13.1.16](https://github.com/truecharts/charts/compare/healthchecks-13.1.15...healthchecks-13.1.16) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/linuxserver/healthchecks to v3.1.20240128[@593017d](https://github.com/593017d) by renovate ([#17673](https://github.com/truecharts/charts/issues/17673)) \ No newline at end of file diff --git a/stable/healthchecks/13.1.16/app-readme.md b/stable/healthchecks/13.1.16/app-readme.md new file mode 100644 index 0000000000..66f01581c9 --- /dev/null +++ b/stable/healthchecks/13.1.16/app-readme.md @@ -0,0 +1,8 @@ +Healthchecks is a cron job monitoring service. It listens for HTTP requests and email messages ("pings") from your cron jobs and scheduled tasks ("checks"). When a ping does not arrive on time, Healthchecks sends out alerts. + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/healthchecks](https://truecharts.org/charts/stable/healthchecks) + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! diff --git a/stable/seafile/4.1.14/charts/common-17.2.29.tgz b/stable/healthchecks/13.1.16/charts/common-17.2.29.tgz similarity index 100% rename from stable/seafile/4.1.14/charts/common-17.2.29.tgz rename to stable/healthchecks/13.1.16/charts/common-17.2.29.tgz diff --git a/stable/healthchecks/13.1.16/ix_values.yaml b/stable/healthchecks/13.1.16/ix_values.yaml new file mode 100644 index 0000000000..fcbc80f999 --- /dev/null +++ b/stable/healthchecks/13.1.16/ix_values.yaml @@ -0,0 +1,41 @@ +image: + repository: ghcr.io/linuxserver/healthchecks + tag: 3.1.20240128@sha256:593017dd58379a4739eef2319b57cb9dc448b44807b39f8bba78598f75e2a0b9 + pullPolicy: IfNotPresent +service: + main: + ports: + main: + port: 10074 + targetPort: 8000 +persistence: + config: + enabled: true + mountPath: "/config" +portal: + open: + enabled: true +securityContext: + container: + readOnlyRootFilesystem: false + runAsNonRoot: false + runAsUser: 0 + runAsGroup: 0 +workload: + main: + podSpec: + containers: + main: + probes: + liveness: + type: tcp + readiness: + type: tcp + startup: + type: tcp + env: + REGENERATE_SETTINGS: "True" + SITE_ROOT: "https://healthchecks.domain" + SITE_NAME: "" + SUPERUSER_EMAIL: "email@healthchecks.io" + SUPERUSER_PASSWORD: "myVeryStrongPassword" diff --git a/stable/healthchecks/13.1.16/questions.yaml b/stable/healthchecks/13.1.16/questions.yaml new file mode 100644 index 0000000000..44db4e11c8 --- /dev/null +++ b/stable/healthchecks/13.1.16/questions.yaml @@ -0,0 +1,2870 @@ +groups: + - name: Container Image + description: Image to be used for container + - name: General Settings + description: General Deployment Settings + - name: Workload Settings + description: Workload Settings + - 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: Postgresql + description: Postgresql + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_tcportal-open_protocol" + host: + - "$kubernetes-resource_configmap_tcportal-open_host" + ports: + - "$kubernetes-resource_configmap_tcportal-open_port" +questions: + - variable: global + group: General Settings + label: "Global Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: stopAll + label: Stop All + description: "Stops All Running pods and hibernates cnpg" + schema: + type: boolean + default: false + - variable: workload + group: "Workload Settings" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type (Advanced) + schema: + type: string + default: Deployment + enum: + - value: Deployment + description: Deployment + - value: DaemonSet + description: DaemonSet + - variable: replicas + label: Replicas (Advanced) + description: Set the number of Replicas + schema: + type: int + show_if: [["type", "!=", "DaemonSet"]] + default: 1 + - variable: podSpec + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: containers + label: Containers + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: Main Container + schema: + additional_attrs: true + type: dict + attrs: + - variable: env + group: "App Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + - variable: SUPERUSER_EMAIL + label: "SUPERUSER_EMAIL" + description: "Superuser email" + schema: + type: string + required: true + default: "REPLACETHIS" + - variable: SUPERUSER_PASSWORD + label: "SUPERUSER_PASSWORD" + description: "Superuser password" + schema: + type: string + required: true + private: true + default: "REPLACETHIS" + - variable: REGENERATE_SETTINGS + label: "REGENERATE_SETTINGS" + description: "Set to true to always override the local_settings.py file with values from environment variables" + schema: + type: string + default: "True" + - variable: SITE_ROOT + label: "SITE_ROOT" + description: "The site's top-level URL and the port it listens to" + schema: + type: string + required: true + default: "" + - variable: SITE_NAME + label: "SITE_NAME" + description: "The site's name" + schema: + type: string + required: true + default: "" + - variable: envList + label: Extra Environment Variables + description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." + 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: extraArgs + label: Extra Args + schema: + type: list + default: [] + items: + - variable: arg + label: Arg + schema: + type: string + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: command + label: Command + schema: + type: list + default: [] + items: + - variable: param + label: Param + schema: + type: string + - variable: TZ + label: Timezone + group: "General Settings" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + - variable: podOptions + group: "General Settings" + label: "Global Pod Options (Advanced)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: expertPodOpts + label: "Expert - Pod Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + label: "Host Networking" + schema: + type: boolean + default: false + - variable: dnsConfig + label: "DNS Configuration" + schema: + type: dict + additional_attrs: true + attrs: + - variable: options + label: "Options" + schema: + type: list + default: [{"name": "ndots", "value": "1"}] + items: + - variable: optionsEntry + label: "Option Entry" + schema: + type: dict + additional_attrs: true + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + - variable: nameservers + label: "Nameservers" + schema: + type: list + default: [] + items: + - variable: nsEntry + label: "Nameserver Entry" + schema: + type: string + required: true + - variable: searches + label: "Searches" + schema: + type: list + default: [] + items: + - variable: searchEntry + label: "Search Entry" + schema: + type: string + required: true + + - variable: imagePullSecretList + group: "General Settings" + label: "Image Pull Secrets" + schema: + type: list + default: [] + items: + - variable: pullsecretentry + label: "Pull Secret" + schema: + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: true + - variable: data + label: Data + schema: + type: dict + additional_attrs: true + attrs: + - variable: registry + label: "Registry" + schema: + type: string + required: true + default: "https://index.docker.io/v1/" + - variable: username + label: "Username" + schema: + type: string + required: true + default: "" + - variable: password + label: "Password" + schema: + type: string + required: true + private: true + default: "" + - variable: email + label: "Email" + schema: + type: string + required: true + default: "" + - 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - 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: 10074 + required: true + - variable: serviceexpert + group: Networking and Services + label: Show Expert Config + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: scaleExternalInterface + description: Add External Interfaces + label: Add external Interfaces + group: Networking + schema: + type: list + items: + - variable: interfaceConfiguration + description: Interface Configuration + label: Interface Configuration + schema: + additional_attrs: true + 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: + additional_attrs: true + 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 + - variable: staticIPConfigurations + label: Static IP Addresses + schema: + type: list + show_if: [["type", "=", "static"]] + items: + - variable: staticIP + label: Static IP + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: Static Routes + schema: + type: list + show_if: [["type", "=", "static"]] + 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: 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - value: Simple + description: Deprecated CHANGE THIS + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: advancedsvcset + label: Show Advanced Service Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + type: list + default: [] + items: + - variable: externalIP + label: External IP + schema: + type: string + - variable: ipFamilyPolicy + label: IP Family Policy + description: Specify the IP Policy + schema: + type: string + default: SingleStack + enum: + - value: SingleStack + description: SingleStack + - value: PreferDualStack + description: PreferDualStack + - value: RequireDualStack + description: RequireDualStack + - variable: ipFamilies + label: IP Families + description: (Advanced) The IP Families that should be used + schema: + type: list + default: [] + items: + - variable: ipFamily + label: IP Family + 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: 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: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: hostPath + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name (Optional) + description: Defaults to chart name + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description (Optional) + description: Defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: icon + label: Icon (Optional) + description: Defaults to chart icon + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: widget + label: Widget Settings + schema: + type: dict + additional_attrs: true + show_if: [["enabled", "=", true]] + attrs: + - variable: enabled + label: Enable Widget + description: When disabled all widget annotations are skipped. + schema: + type: boolean + default: true + - variable: custom + label: Options + schema: + type: dict + additional_attrs: true + attrs: + - variable: key + label: API-key (key) + schema: + type: string + default: "" + - variable: customkv + label: Custom Options + schema: + type: list + default: [] + items: + - variable: option + label: Option + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + default: "" + required: true + - variable: value + label: Value + schema: + type: string + default: "" + required: true + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: overrideService + 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: [] + show_if: [["certificateIssuer", "=", ""]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your Cert-Manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: scaleCert + label: Use TrueNAS SCALE Certificate (Deprecated) + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: "Allow Cross Origin Requests" + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: namespace + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description + description: defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: securityContext + group: Security and Permissions + label: Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: container + label: Container + schema: + additional_attrs: true + type: dict + attrs: + # Settings from questions.yaml get appended here on a per-app basis + - variable: runAsUser + label: "runAsUser" + description: "The UserID of the user running the application" + schema: + type: int + default: 0 + - variable: runAsGroup + label: "runAsGroup" + description: "The groupID of the user running the application" + schema: + type: int + default: 0 + # Settings from questions.yaml get appended here on a per-app basis + - 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 + show_if: [["runAsUser", "=", 0]] + 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: "0022" + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: true + - variable: pod + label: Pod + schema: + additional_attrs: true + type: dict + attrs: + - 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 + # Settings from questions.yaml get appended here on a per-app basis + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: resources + group: Resources and Devices + label: "Resource Limits" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: Advanced Limit Resource Consumption + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 4000m + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: RAM + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/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 + hidden: true + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 10m + hidden: true + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 50Mi + hidden: true + 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: device + 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" + - variable: scaleGPU + label: GPU Configuration + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: scaleGPUEntry + label: GPU + schema: + additional_attrs: true + type: dict + attrs: + # Specify GPU configuration + - variable: gpu + label: Select GPU + schema: + additional_attrs: true + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + - variable: workaround + label: "Workaround" + schema: + type: string + default: workaround + hidden: true +# - variable: horizontalPodAutoscaler +# group: Advanced +# label: (Advanced) Horizontal Pod Autoscaler +# schema: +# type: list +# default: [] +# items: +# - variable: hpaEntry +# label: HPA Entry +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: name +# label: Name +# schema: +# type: string +# required: true +# default: "" +# - 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: + type: list + default: [] + items: + - variable: netPolicyEntry + label: Network Policy Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - 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: 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: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: NodePort + description: Deprecated CHANGE THIS + - value: ClusterIP + description: ClusterIP + - value: LoadBalancer + description: LoadBalancer + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + default: 36107 + - variable: ingress + label: "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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: 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: gluetun + description: Gluetun + - value: tailscale + description: Tailscale + - value: openvpn + description: OpenVPN (Deprecated) + - value: wireguard + description: Wireguard (Deprecated) + - variable: openvpn + label: OpenVPN Settings + schema: + additional_attrs: true + 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 + show_if: [["username", "!=", ""]] + default: "" + required: true + - variable: tailscale + label: Tailscale Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "tailscale"]] + attrs: + - variable: authkey + label: Authentication Key + description: Provide an auth key to automatically authenticate the node as your user account. + schema: + type: string + private: true + default: "" + - variable: auth_once + label: Auth Once + description: Only attempt to log in if not already logged in. + schema: + type: boolean + default: true + - variable: accept_dns + label: Accept DNS + description: Accept DNS configuration from the admin console. + schema: + type: boolean + default: false + - variable: userspace + label: Userspace + description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. + schema: + type: boolean + default: false + - variable: routes + label: Routes + description: Expose physical subnet routes to your entire Tailscale network. + schema: + type: string + default: "" + - variable: dest_ip + label: Destination IP + description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. + schema: + type: string + default: "" + - variable: sock5_server + label: Sock5 Server + description: The address on which to listen for SOCKS5 proxying into the tailscale net. + schema: + type: string + default: "" + - variable: outbound_http_proxy_listen + label: Outbound HTTP Proxy Listen + description: The address on which to listen for HTTP proxying into the tailscale net. + schema: + type: string + default: "" + - variable: extra_args + label: Extra Args + description: Extra Args + schema: + type: string + default: "" + - variable: daemon_extra_args + label: Tailscale Daemon Extra Args + description: Tailscale Daemon Extra Args + schema: + type: string + default: "" + - 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: string + show_if: [["type", "!=", "disabled"]] + default: "" + + - 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 + max_length: 10240 + - variable: docs + group: Documentation + label: Please read the documentation at https://truecharts.org + description: 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: donateNag + group: Documentation + label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor + description: Please consider supporting TrueCharts, see +
https://truecharts.org/sponsor + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDonate + label: I have considered donating + schema: + type: boolean + default: true + hidden: true diff --git a/stable/paperless-ngx/6.4.6/templates/NOTES.txt b/stable/healthchecks/13.1.16/templates/NOTES.txt similarity index 100% rename from stable/paperless-ngx/6.4.6/templates/NOTES.txt rename to stable/healthchecks/13.1.16/templates/NOTES.txt diff --git a/stable/seafile/4.1.14/templates/common.yaml b/stable/healthchecks/13.1.16/templates/common.yaml similarity index 100% rename from stable/seafile/4.1.14/templates/common.yaml rename to stable/healthchecks/13.1.16/templates/common.yaml diff --git a/stable/paperless-ngx/6.4.6/values.yaml b/stable/healthchecks/13.1.16/values.yaml similarity index 100% rename from stable/paperless-ngx/6.4.6/values.yaml rename to stable/healthchecks/13.1.16/values.yaml diff --git a/stable/komga/12.2.8/CHANGELOG.md b/stable/komga/12.2.8/CHANGELOG.md new file mode 100644 index 0000000000..d03e6485a2 --- /dev/null +++ b/stable/komga/12.2.8/CHANGELOG.md @@ -0,0 +1,99 @@ +--- +title: Changelog +--- + +**Important:** +*for the complete changelog, please refer to the website* + + + +## [komga-12.2.8](https://github.com/truecharts/charts/compare/komga-12.2.7...komga-12.2.8) (2024-01-29) + +### Chore + + + +- update container image gotson/komga to v1.10.3[@d962b7a](https://github.com/d962b7a) by renovate ([#17678](https://github.com/truecharts/charts/issues/17678)) + + +## [komga-12.2.7](https://github.com/truecharts/charts/compare/komga-12.2.6...komga-12.2.7) (2024-01-26) + +### Chore + + + +- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) + + +## [komga-12.2.6](https://github.com/truecharts/charts/compare/komga-12.2.5...komga-12.2.6) (2024-01-22) + +### Chore + + + +- update container image gotson/komga to v1.10.2[@3cc3c8c](https://github.com/3cc3c8c) by renovate ([#17508](https://github.com/truecharts/charts/issues/17508)) + + +## [komga-12.2.5](https://github.com/truecharts/charts/compare/komga-12.2.4...komga-12.2.5) (2024-01-21) + +### Chore + + + +- update container image common to v17.2.28[@918b4c5](https://github.com/918b4c5) by renovate ([#17478](https://github.com/truecharts/charts/issues/17478)) + + +## [komga-12.2.4](https://github.com/truecharts/charts/compare/komga-12.2.3...komga-12.2.4) (2024-01-21) + +### Chore + + + +- update container image common to v17.2.26[@24c98f7](https://github.com/24c98f7) by renovate ([#17409](https://github.com/truecharts/charts/issues/17409)) + + +## [komga-12.2.3](https://github.com/truecharts/charts/compare/komga-12.2.2...komga-12.2.3) (2024-01-21) + +### Chore + + + +- update metadata in chart.yaml ([#17457](https://github.com/truecharts/charts/issues/17457)) + + +## [komga-12.2.2](https://github.com/truecharts/charts/compare/komga-12.2.1...komga-12.2.2) (2024-01-14) + +### Chore + + + +- update container image gotson/komga to v1.10.1[@ffe43cb](https://github.com/ffe43cb) by renovate ([#17192](https://github.com/truecharts/charts/issues/17192)) + + + + +## [komga-12.2.1](https://github.com/truecharts/charts/compare/komga-12.2.0...komga-12.2.1) (2024-01-09) + +### Chore + + + +- update container image common to v17.2.22[@e7c9056](https://github.com/e7c9056) by renovate ([#16986](https://github.com/truecharts/charts/issues/16986)) + + +## [komga-12.2.0](https://github.com/truecharts/charts/compare/komga-12.1.5...komga-12.2.0) (2024-01-08) + +### Chore + + + +- update container image gotson/komga to v1.10.0[@37159b0](https://github.com/37159b0) by renovate ([#17020](https://github.com/truecharts/charts/issues/17020)) + + +## [komga-12.1.5](https://github.com/truecharts/charts/compare/komga-12.1.4...komga-12.1.5) (2024-01-02) + +### Chore + + + +- force bump to ensure up-to-date catalogs diff --git a/stable/komga/12.2.8/Chart.yaml b/stable/komga/12.2.8/Chart.yaml new file mode 100644 index 0000000000..8f4d30e880 --- /dev/null +++ b/stable/komga/12.2.8/Chart.yaml @@ -0,0 +1,40 @@ +annotations: + max_scale_version: 23.10.2 + min_scale_version: 23.10.0 + truecharts.org/SCALE-support: "true" + truecharts.org/category: media + truecharts.org/max_helm_version: "3.14" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: stable +apiVersion: v2 +appVersion: 1.10.3 +dependencies: + - name: common + version: 17.2.29 + repository: oci://tccr.io/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] +deprecated: false +description: A comics/mangas server to serve/stream pages via API +home: https://truecharts.org/charts/stable/komga +icon: https://truecharts.org/img/hotlink-ok/chart-icons/komga.png +keywords: + - komga + - comics + - mangas + - server +kubeVersion: ">=1.24.0-0" +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: komga +sources: + - https://github.com/gotson/komga + - https://komga.org/ + - https://github.com/truecharts/charts/tree/master/charts/stable/komga + - https://hub.docker.com/r/gotson/komga +type: application +version: 12.2.8 diff --git a/stable/komga/12.2.8/README.md b/stable/komga/12.2.8/README.md new file mode 100644 index 0000000000..3f26d1e5a7 --- /dev/null +++ b/stable/komga/12.2.8/README.md @@ -0,0 +1,28 @@ +--- +title: README +--- + +## General Info + +TrueCharts can be installed as both _normal_ Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/stable/komga) + +**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)** + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/charts/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/sponsor) or contributing back to the project any way you can! + +_All Rights Reserved - The TrueCharts Project_ diff --git a/stable/komga/12.2.8/app-changelog.md b/stable/komga/12.2.8/app-changelog.md new file mode 100644 index 0000000000..984dd17438 --- /dev/null +++ b/stable/komga/12.2.8/app-changelog.md @@ -0,0 +1,9 @@ + + +## [komga-12.2.8](https://github.com/truecharts/charts/compare/komga-12.2.7...komga-12.2.8) (2024-01-29) + +### Chore + + + +- update container image gotson/komga to v1.10.3[@d962b7a](https://github.com/d962b7a) by renovate ([#17678](https://github.com/truecharts/charts/issues/17678)) \ No newline at end of file diff --git a/stable/komga/12.2.8/app-readme.md b/stable/komga/12.2.8/app-readme.md new file mode 100644 index 0000000000..16065d09d8 --- /dev/null +++ b/stable/komga/12.2.8/app-readme.md @@ -0,0 +1,8 @@ +A comics/mangas server to serve/stream pages via API + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/komga](https://truecharts.org/charts/stable/komga) + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! diff --git a/stable/sourcegraph/4.1.11/charts/common-17.2.29.tgz b/stable/komga/12.2.8/charts/common-17.2.29.tgz similarity index 100% rename from stable/sourcegraph/4.1.11/charts/common-17.2.29.tgz rename to stable/komga/12.2.8/charts/common-17.2.29.tgz diff --git a/stable/komga/12.2.8/ix_values.yaml b/stable/komga/12.2.8/ix_values.yaml new file mode 100644 index 0000000000..95c21695f2 --- /dev/null +++ b/stable/komga/12.2.8/ix_values.yaml @@ -0,0 +1,36 @@ +image: + repository: gotson/komga + tag: 1.10.3@sha256:d962b7a30246d2278de9587deba458fad0102f6b5b014fe0458b8ceddb099b00 + pullPolicy: IfNotPresent +workload: + main: + podSpec: + containers: + main: + env: + SERVER_PORT: "{{ .Values.service.main.ports.main.port }}" + probes: + liveness: + port: "{{ .Values.service.main.ports.main.port }}" + path: /actuator/health + readiness: + port: "{{ .Values.service.main.ports.main.port }}" + path: /actuator/health + startup: + type: tcp + port: "{{ .Values.service.main.ports.main.port }}" +service: + main: + ports: + main: + port: 10085 +persistence: + config: + enabled: true + mountPath: "/config" + data: + enabled: true + mountPath: "/data" +portal: + open: + enabled: true diff --git a/stable/komga/12.2.8/questions.yaml b/stable/komga/12.2.8/questions.yaml new file mode 100644 index 0000000000..49e2c9f1ca --- /dev/null +++ b/stable/komga/12.2.8/questions.yaml @@ -0,0 +1,3101 @@ +groups: + - name: Container Image + description: Image to be used for container + - name: General Settings + description: General Deployment Settings + - name: Workload Settings + description: Workload Settings + - 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: Postgresql + description: Postgresql + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_tcportal-open_protocol" + host: + - "$kubernetes-resource_configmap_tcportal-open_host" + ports: + - "$kubernetes-resource_configmap_tcportal-open_port" +questions: + - variable: global + group: General Settings + label: "Global Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: stopAll + label: Stop All + description: "Stops All Running pods and hibernates cnpg" + schema: + type: boolean + default: false + - variable: workload + group: "Workload Settings" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type (Advanced) + schema: + type: string + default: Deployment + enum: + - value: Deployment + description: Deployment + - value: DaemonSet + description: DaemonSet + - variable: replicas + label: Replicas (Advanced) + description: Set the number of Replicas + schema: + type: int + show_if: [["type", "!=", "DaemonSet"]] + default: 1 + - variable: podSpec + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: containers + label: Containers + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: Main Container + schema: + additional_attrs: true + type: dict + attrs: + - variable: envList + label: Extra Environment Variables + description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." + 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: extraArgs + label: Extra Args + schema: + type: list + default: [] + items: + - variable: arg + label: Arg + schema: + type: string + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: command + label: Command + schema: + type: list + default: [] + items: + - variable: param + label: Param + schema: + type: string + - variable: TZ + label: Timezone + group: "General Settings" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + - variable: podOptions + group: "General Settings" + label: "Global Pod Options (Advanced)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: expertPodOpts + label: "Expert - Pod Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + label: "Host Networking" + schema: + type: boolean + default: false + - variable: dnsConfig + label: "DNS Configuration" + schema: + type: dict + additional_attrs: true + attrs: + - variable: options + label: "Options" + schema: + type: list + default: [{"name": "ndots", "value": "1"}] + items: + - variable: optionsEntry + label: "Option Entry" + schema: + type: dict + additional_attrs: true + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + - variable: nameservers + label: "Nameservers" + schema: + type: list + default: [] + items: + - variable: nsEntry + label: "Nameserver Entry" + schema: + type: string + required: true + - variable: searches + label: "Searches" + schema: + type: list + default: [] + items: + - variable: searchEntry + label: "Search Entry" + schema: + type: string + required: true + + - variable: imagePullSecretList + group: "General Settings" + label: "Image Pull Secrets" + schema: + type: list + default: [] + items: + - variable: pullsecretentry + label: "Pull Secret" + schema: + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: true + - variable: data + label: Data + schema: + type: dict + additional_attrs: true + attrs: + - variable: registry + label: "Registry" + schema: + type: string + required: true + default: "https://index.docker.io/v1/" + - variable: username + label: "Username" + schema: + type: string + required: true + default: "" + - variable: password + label: "Password" + schema: + type: string + required: true + private: true + default: "" + - variable: email + label: "Email" + schema: + type: string + required: true + default: "" + - 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - 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: 10085 + required: true + - variable: serviceexpert + group: Networking and Services + label: Show Expert Config + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: scaleExternalInterface + description: Add External Interfaces + label: Add external Interfaces + group: Networking + schema: + type: list + items: + - variable: interfaceConfiguration + description: Interface Configuration + label: Interface Configuration + schema: + additional_attrs: true + 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: + additional_attrs: true + 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 + - variable: staticIPConfigurations + label: Static IP Addresses + schema: + type: list + show_if: [["type", "=", "static"]] + items: + - variable: staticIP + label: Static IP + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: Static Routes + schema: + type: list + show_if: [["type", "=", "static"]] + 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: 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - value: Simple + description: Deprecated CHANGE THIS + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: advancedsvcset + label: Show Advanced Service Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + type: list + default: [] + items: + - variable: externalIP + label: External IP + schema: + type: string + - variable: ipFamilyPolicy + label: IP Family Policy + description: Specify the IP Policy + schema: + type: string + default: SingleStack + enum: + - value: SingleStack + description: SingleStack + - value: PreferDualStack + description: PreferDualStack + - value: RequireDualStack + description: RequireDualStack + - variable: ipFamilies + label: IP Families + description: (Advanced) The IP Families that should be used + schema: + type: list + default: [] + items: + - variable: ipFamily + label: IP Family + 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: 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: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: data + label: "App Data Storage" + description: "Stores the Application Data." + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: hostPath + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name (Optional) + description: Defaults to chart name + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description (Optional) + description: Defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: icon + label: Icon (Optional) + description: Defaults to chart icon + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: widget + label: Widget Settings + schema: + type: dict + additional_attrs: true + show_if: [["enabled", "=", true]] + attrs: + - variable: enabled + label: Enable Widget + description: When disabled all widget annotations are skipped. + schema: + type: boolean + default: true + - variable: custom + label: Options + schema: + type: dict + additional_attrs: true + attrs: + - variable: key + label: API-key (key) + schema: + type: string + default: "" + - variable: customkv + label: Custom Options + schema: + type: list + default: [] + items: + - variable: option + label: Option + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + default: "" + required: true + - variable: value + label: Value + schema: + type: string + default: "" + required: true + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: overrideService + 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: [] + show_if: [["certificateIssuer", "=", ""]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your Cert-Manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: scaleCert + label: Use TrueNAS SCALE Certificate (Deprecated) + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: "Allow Cross Origin Requests" + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: namespace + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description + description: defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: securityContext + group: Security and Permissions + label: Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: container + label: Container + schema: + additional_attrs: true + type: dict + attrs: + # Settings from questions.yaml get appended here on a per-app basis + - 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 + # Settings from questions.yaml get appended here on a per-app basis + - 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 + show_if: [["runAsUser", "=", 0]] + 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: "0022" + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: true + - variable: pod + label: Pod + schema: + additional_attrs: true + type: dict + attrs: + - 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 + # Settings from questions.yaml get appended here on a per-app basis + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: resources + group: Resources and Devices + label: "Resource Limits" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: Advanced Limit Resource Consumption + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 4000m + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: RAM + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/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 + hidden: true + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 10m + hidden: true + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 50Mi + hidden: true + 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: device + 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" + - variable: scaleGPU + label: GPU Configuration + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: scaleGPUEntry + label: GPU + schema: + additional_attrs: true + type: dict + attrs: + # Specify GPU configuration + - variable: gpu + label: Select GPU + schema: + additional_attrs: true + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + - variable: workaround + label: "Workaround" + schema: + type: string + default: workaround + hidden: true +# - variable: horizontalPodAutoscaler +# group: Advanced +# label: (Advanced) Horizontal Pod Autoscaler +# schema: +# type: list +# default: [] +# items: +# - variable: hpaEntry +# label: HPA Entry +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: name +# label: Name +# schema: +# type: string +# required: true +# default: "" +# - 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: + type: list + default: [] + items: + - variable: netPolicyEntry + label: Network Policy Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - 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: 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: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: NodePort + description: Deprecated CHANGE THIS + - value: ClusterIP + description: ClusterIP + - value: LoadBalancer + description: LoadBalancer + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + default: 36107 + - variable: ingress + label: "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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: 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: gluetun + description: Gluetun + - value: tailscale + description: Tailscale + - value: openvpn + description: OpenVPN (Deprecated) + - value: wireguard + description: Wireguard (Deprecated) + - variable: openvpn + label: OpenVPN Settings + schema: + additional_attrs: true + 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 + show_if: [["username", "!=", ""]] + default: "" + required: true + - variable: tailscale + label: Tailscale Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "tailscale"]] + attrs: + - variable: authkey + label: Authentication Key + description: Provide an auth key to automatically authenticate the node as your user account. + schema: + type: string + private: true + default: "" + - variable: auth_once + label: Auth Once + description: Only attempt to log in if not already logged in. + schema: + type: boolean + default: true + - variable: accept_dns + label: Accept DNS + description: Accept DNS configuration from the admin console. + schema: + type: boolean + default: false + - variable: userspace + label: Userspace + description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. + schema: + type: boolean + default: false + - variable: routes + label: Routes + description: Expose physical subnet routes to your entire Tailscale network. + schema: + type: string + default: "" + - variable: dest_ip + label: Destination IP + description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. + schema: + type: string + default: "" + - variable: sock5_server + label: Sock5 Server + description: The address on which to listen for SOCKS5 proxying into the tailscale net. + schema: + type: string + default: "" + - variable: outbound_http_proxy_listen + label: Outbound HTTP Proxy Listen + description: The address on which to listen for HTTP proxying into the tailscale net. + schema: + type: string + default: "" + - variable: extra_args + label: Extra Args + description: Extra Args + schema: + type: string + default: "" + - variable: daemon_extra_args + label: Tailscale Daemon Extra Args + description: Tailscale Daemon Extra Args + schema: + type: string + default: "" + - 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: string + show_if: [["type", "!=", "disabled"]] + default: "" + + - 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 + max_length: 10240 + - variable: docs + group: Documentation + label: Please read the documentation at https://truecharts.org + description: 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: donateNag + group: Documentation + label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor + description: Please consider supporting TrueCharts, see +
https://truecharts.org/sponsor + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDonate + label: I have considered donating + schema: + type: boolean + default: true + hidden: true diff --git a/stable/seafile/4.1.14/templates/NOTES.txt b/stable/komga/12.2.8/templates/NOTES.txt similarity index 100% rename from stable/seafile/4.1.14/templates/NOTES.txt rename to stable/komga/12.2.8/templates/NOTES.txt diff --git a/stable/komga/12.2.8/templates/common.yaml b/stable/komga/12.2.8/templates/common.yaml new file mode 100644 index 0000000000..b51394e00a --- /dev/null +++ b/stable/komga/12.2.8/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.v1.common.loader.all" . }} diff --git a/stable/seafile/4.1.14/values.yaml b/stable/komga/12.2.8/values.yaml similarity index 100% rename from stable/seafile/4.1.14/values.yaml rename to stable/komga/12.2.8/values.yaml diff --git a/stable/meshcentral/14.1.13/CHANGELOG.md b/stable/meshcentral/14.1.13/CHANGELOG.md new file mode 100644 index 0000000000..a13e588df7 --- /dev/null +++ b/stable/meshcentral/14.1.13/CHANGELOG.md @@ -0,0 +1,99 @@ +--- +title: Changelog +--- + +**Important:** +*for the complete changelog, please refer to the website* + + + +## [meshcentral-14.1.13](https://github.com/truecharts/charts/compare/meshcentral-14.1.12...meshcentral-14.1.13) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/ylianst/meshcentral to v1.1.20[@bd26159](https://github.com/bd26159) by renovate ([#17677](https://github.com/truecharts/charts/issues/17677)) + + +## [meshcentral-14.1.12](https://github.com/truecharts/charts/compare/meshcentral-14.1.11...meshcentral-14.1.12) (2024-01-26) + +### Chore + + + +- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) + + +## [meshcentral-14.1.11](https://github.com/truecharts/charts/compare/meshcentral-14.1.10...meshcentral-14.1.11) (2024-01-21) + +### Chore + + + +- update container image common to v17.2.28[@918b4c5](https://github.com/918b4c5) by renovate ([#17478](https://github.com/truecharts/charts/issues/17478)) + + +## [meshcentral-14.1.10](https://github.com/truecharts/charts/compare/meshcentral-14.1.9...meshcentral-14.1.10) (2024-01-21) + +### Chore + + + +- update container image common to v17.2.26[@24c98f7](https://github.com/24c98f7) by renovate ([#17409](https://github.com/truecharts/charts/issues/17409)) + + +## [meshcentral-14.1.9](https://github.com/truecharts/charts/compare/meshcentral-14.1.8...meshcentral-14.1.9) (2024-01-21) + +### Chore + + + +- update metadata in chart.yaml ([#17457](https://github.com/truecharts/charts/issues/17457)) + + +## [meshcentral-14.1.8](https://github.com/truecharts/charts/compare/meshcentral-14.1.7...meshcentral-14.1.8) (2024-01-19) + +### Chore + + + +- update container image ghcr.io/ylianst/meshcentral to v1.1.19[@b2e718e](https://github.com/b2e718e) by renovate ([#17303](https://github.com/truecharts/charts/issues/17303)) + + +## [meshcentral-14.1.7](https://github.com/truecharts/charts/compare/meshcentral-14.1.6...meshcentral-14.1.7) (2024-01-15) + +### Chore + + + +- update container image ghcr.io/ylianst/meshcentral to v1.1.18[@71f8c8d](https://github.com/71f8c8d) by renovate ([#17248](https://github.com/truecharts/charts/issues/17248)) + + + + +## [meshcentral-14.1.6](https://github.com/truecharts/charts/compare/meshcentral-14.1.5...meshcentral-14.1.6) (2024-01-09) + +### Chore + + + +- update container image common to v17.2.22[@e7c9056](https://github.com/e7c9056) by renovate ([#16986](https://github.com/truecharts/charts/issues/16986)) + + +## [meshcentral-14.1.5](https://github.com/truecharts/charts/compare/meshcentral-14.1.4...meshcentral-14.1.5) (2024-01-02) + +### Chore + + + +- force bump to ensure up-to-date catalogs + + +## [meshcentral-14.1.4](https://github.com/truecharts/charts/compare/meshcentral-14.1.3...meshcentral-14.1.4) (2024-01-01) + +### Chore + + + +- increase common version for oci fixes diff --git a/stable/meshcentral/14.1.13/Chart.yaml b/stable/meshcentral/14.1.13/Chart.yaml new file mode 100644 index 0000000000..26edc33be5 --- /dev/null +++ b/stable/meshcentral/14.1.13/Chart.yaml @@ -0,0 +1,38 @@ +annotations: + max_scale_version: 23.10.2 + min_scale_version: 23.10.0 + truecharts.org/SCALE-support: "true" + truecharts.org/category: cloud + truecharts.org/max_helm_version: "3.14" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: stable +apiVersion: v2 +appVersion: 1.1.20 +dependencies: + - name: common + version: 17.2.29 + repository: oci://tccr.io/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] +deprecated: false +description: MeshCentral is a full computer management web site +home: https://truecharts.org/charts/stable/meshcentral +icon: https://truecharts.org/img/hotlink-ok/chart-icons/meshcentral.png +keywords: + - meshcentral + - teamviewer + - rdp +kubeVersion: ">=1.24.0-0" +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: meshcentral +sources: + - https://github.com/Ylianst/MeshCentral + - https://github.com/truecharts/charts/tree/master/charts/stable/meshcentral + - https://ghcr.io/ylianst/meshcentral +type: application +version: 14.1.13 diff --git a/stable/meshcentral/14.1.13/README.md b/stable/meshcentral/14.1.13/README.md new file mode 100644 index 0000000000..8d51bf653f --- /dev/null +++ b/stable/meshcentral/14.1.13/README.md @@ -0,0 +1,28 @@ +--- +title: README +--- + +## General Info + +TrueCharts can be installed as both _normal_ Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/stable/meshcentral) + +**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)** + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/charts/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/sponsor) or contributing back to the project any way you can! + +_All Rights Reserved - The TrueCharts Project_ diff --git a/stable/meshcentral/14.1.13/app-changelog.md b/stable/meshcentral/14.1.13/app-changelog.md new file mode 100644 index 0000000000..a5fb33e604 --- /dev/null +++ b/stable/meshcentral/14.1.13/app-changelog.md @@ -0,0 +1,9 @@ + + +## [meshcentral-14.1.13](https://github.com/truecharts/charts/compare/meshcentral-14.1.12...meshcentral-14.1.13) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/ylianst/meshcentral to v1.1.20[@bd26159](https://github.com/bd26159) by renovate ([#17677](https://github.com/truecharts/charts/issues/17677)) \ No newline at end of file diff --git a/stable/meshcentral/14.1.13/app-readme.md b/stable/meshcentral/14.1.13/app-readme.md new file mode 100644 index 0000000000..dc6ab6c435 --- /dev/null +++ b/stable/meshcentral/14.1.13/app-readme.md @@ -0,0 +1,8 @@ +MeshCentral is a full computer management web site + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/meshcentral](https://truecharts.org/charts/stable/meshcentral) + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! diff --git a/stable/splunk/6.1.10/charts/common-17.2.29.tgz b/stable/meshcentral/14.1.13/charts/common-17.2.29.tgz similarity index 100% rename from stable/splunk/6.1.10/charts/common-17.2.29.tgz rename to stable/meshcentral/14.1.13/charts/common-17.2.29.tgz diff --git a/stable/meshcentral/14.1.13/ix_values.yaml b/stable/meshcentral/14.1.13/ix_values.yaml new file mode 100644 index 0000000000..cdf5e367dd --- /dev/null +++ b/stable/meshcentral/14.1.13/ix_values.yaml @@ -0,0 +1,1001 @@ +image: + repository: ghcr.io/ylianst/meshcentral + pullPolicy: IfNotPresent + tag: 1.1.20@sha256:bd26159a83a0872c69a453b6c244c22259de69424386e90a5affbf4c30cf5c34 +workload: + main: + podSpec: + containers: + main: + command: + - node + - meshcentral/meshcentral +securityContext: + container: + readOnlyRootFilesystem: false + runAsNonRoot: false + runAsUser: 0 + runAsGroup: 0 +# - Values with the character _ in-front of them are pruned. Add or remove _ to disable or enable options +# - More in-depth info for each options can be found here: https://github.com/Ylianst/MeshCentral/blob/master/meshcentral-config-schema.json +# - Check for this chart's specific info in our webpage https://truecharts.org +# - Last sync with upstream config schema: Oct 29, 2022 +# - Any service that uses port other than 443, need to be manually configured. +meshcentral: + settings: + # - The actual main port as seen externally on the Internet, this setting is often used when a reverse-proxy is used. + aliasPort: 443 + # - When set, relayPort value is ignored. Set this to a DNS name the points to this server. When the server is accessed using the DNS name, the main web server port is used as a web relay port. + relayDNS: [] + # - Automatically downloads all agent error logs into meshcentral-data/agenterrorlogs.txt. + agentLogDump: false + # - Automatically activates and transfers any agent crash dump files to the server in meshcentral-data/coredumps. + agentCoreDump: false + # - List of non-administrator users that have access to mesh agent crash dumps. + _agentCoreDumpUsers: [] + # - When code signing an agent using authenticode, lock the agent to only allow connection to this server. (This is in testing, the default value will change to true in the future). + _agentSignLock: false + # - The time stamping server to use when code signing Windows executables. When set to false, the executables are not time stamped. + _agentTimeStampServer: http://timestamp.comodoca.com/authenticode + # - The HTTP proxy to use when contacting the time stamping server, if false, no proxy is used. By default, the npmproxy value is used. + _agentTimeStampProxy: + # - When set to true, MeshCentral will only grab the required TCP listening ports or fail. It will not try to use the next available port of it's busy. + _exactPorts: false + # - Set this to the primary DNS name of this MeshCentral server. + cert: mc.domain.com + # - Force MeshCentral to use the HTTPS and MPS certificates even if the name does not match the expected DNS value. + keepCerts: false + # - When enabled, only MeshCentral WAN features are enabled and agents will connect to the server using a well known DNS name. + WANonly: false + # - When enabled, only MeshCentral LAN features are enabled and agents will find the server using multicast LAN packets. + LANonly: false + allowLoginToken: false + # - Controls the Strict-Transport-Security header, default is 1 year. Set to false to remove, true to force enable, or string to set a custom value. If set to null, MeshCentral will enable if a trusted certificate is set. + _StrictTransportSecurity: null + # - When enabled, the MeshCentral web site can be embedded within another website's iframe. + allowFraming: false + # - Options: strict | lax | none | true + _cookieIpCheck: lax + # - When enabled, allows use of WebRTC to allow direct network traffic between the agent and browser. + webRTC: false + # - By default, a nice looking 404 error page is displayed when needed. Set this to false to disable it. + nice404: true + # - When specified, sends data to the browser at x seconds interval and expects a response from the browser. + _browserPing: 300 + # - When specified, sends data to the browser at x seconds interval. + _browserPong: 300 + # - Loads all agent binaries in RAM for faster agent updates. + _agentsInRam: false + # - When specified, sends data to the agent at x seconds interval and expects a response from the agent. + _agentPing: 300 + # - When specified, sends data to the agent at x seconds interval. + _agentPong: 300 + # - When enabled, MeshCentral will automatically monitor and manage Intel AMT devices. + _amtManager: true + # - If an agent attempts to connect to a unknown device group, automatically create a new device group and grant access to the specified user. Example: admin + _orphanAgentUser: null + # - How much time in seconds with no traffic from an agent before dropping the agent connection. + _agentIdleTimeout: 150 + # - Adds a random length string to generated web pages to mitigate a BREACH attack. + _webPageLengthRandomization: true + # - Enables GZIP compression for web requests. + compression: true + # - Enables server-side, websocket per-message deflate compression. + wsCompression: true + # - Enables agent-side, websocket per-message deflate compression. wscompression must also be true for this to work. + agentWsCompression: true + # - Set to 1 to present the server from updating any agent. + _noAgentUpdate: 0 + # - When set to 2, all agents that need to be updated will use the meshcore.js update system. With the default value of 1, the native update system is used. + _agentUpdateSystem: 1 + # - Set to false to not allow temporary agents to be updated. + _temporaryAgentUpdate: true + # - Set to false to disable Intel AMT scanning on the local network, this is already disabled in WAN mode. + _amtScanner: true + # - Set to false to disable agent multicast scanning on the local network, this is already disabled in WAN mode. + _meshScanner: true + # - When false, users will only be able to set remote desktop image quality to 60%, this can reduce server bandwidth usage. + _allowHighQualityDesktop: true + # - When set with a valid email address, enables the MeshCentral web push notification feature. Allows administrators to send browser notifications to users even if they are not looking at the MeshCentral web site. + _webPush: + # - Server administrator email given to the FireFox and Chrome push notification services. + email: null + # - Duration of a session cookie in minutes. Changing this affects how often the session needs to be automatically refreshed. + sessionTime: 60 + # - Options: strict | lax | none + sessionSameSite: lax + # - Amount of time to keep various events in the database, in seconds. + dbExpire: + # - Amount of time in seconds that events are kept in the database. + events: 1728000 + # - Amount of time in seconds that device power events are kept in the database. + powerevents: 864000 + # - Amount of time in seconds that server statistics are kept in the database. + statsevents: 2592000 + # - Execute this when the server startup is completed. The first parameter will be the server version. + _RunOnServerStarted: null + # - Execute this when the server has been updated. The first parameter will be the server version. + _RunOnServerUpdated: null + # - Execute this when the server has to restart due to an error. The first parameter will be the server version. + _RunOnServerError: null + # - When true, this server uses MeshCentral.com a push notification relay for Android notifications. Push notifications work even if the Android app is not open. + _publicPushNotifications: false + # - When true, enabled a server modules that efficiently splits a remote desktop stream to multiple browsers. Also allows slow browsers to not slow down the session for fast ones, this comes at the cost of extra server memory and processing for all remote desktop sessions. + _desktopMultiplex: false + # - If set, a user from a banned IP address will be redirected to this URL. + _ipBlockedUserRedirect: null + # - When set, only users from allowed IP address ranges can connect to the server. Example: 192.168.2.100,192.168.1.0/24 + _userAllowedIP: null + # - When set, users from these denied IP address ranges will not be able to connect to the server. Example: 192.168.2.100,192.168.1.0/24 + _userBlockedIP: null + # - When set, only agents from allowed IP address ranges can connect to the server. Example: 192.168.2.100,192.168.1.0/24 + _agentAllowedIP: null + # - When set, agents from these denied IP address ranges will not be able to connect to the server. Example: 192.168.2.100,192.168.1.0/24 + _agentBlockedIP: null + # - File path and name of the authentication log to be created. This log can be parsed by Fail2ban. + _authLog: null + # - Users in this list are allowed to send and receive inter-user messages. This can be used to implement bots or other software where MeshCentral is used as data transport. See interuser websocket command in the code. + _InterUserMessaging: [] + # - Users in this list are allowed to see and manage all device groups within their domain. + _manageAllDeviceGroups: [] + # - Users in this list are allowed to manage all users in all domains. + _manageCrossDomain: [] + # - When this server is in LAN mode, you may discover this server using a multicast discovery tool. When discovery happens, the name and info fields are sent back to the discovery tool. + _localDiscovery: + name: null + info: null + # - When set, encrypts all LAN discovery traffic to agents and tools using this key. This is only useful in LAN/Hybrid mode when agents and tools user multicast to find the server. + key: null + # - When true, indicates that a TLS offloader is in front of the MeshCentral server. More typically, set this to the IP address of the reverse proxy or TLS offloader so that IP forwarding headers will be trusted. For example: 127.0.0.1,192.168.1.100 + _tlsOffload: false + # - Trust forwarded headers from these IPs or domains. Providing the magic string "CloudFlare" will cause the server to download the IP address list of trusted CloudFlare proxies directly from CloudFlare on each server start. For example: 127.0.0.1,proxy.example.com,CloudFlare + _trustedProxy: null + # - The Management Presence Server (MPS), this is the server that received Intel AMT Client Initiated Remote Access (CIRA) connections. + _mpsPort: 4433 + _mpsAliasPort: null + _mpsAliasHost: null + # - When set to true, indicate that TLS is being performed by a device in front of MeshCentral. + _mpsTlsOffload: false + # - When set to true, the MPS server will only accept TLS 1.2 and 1.3 connections. Older Intel AMT devices will not be able to connect. + _mpsHighSecurity: false + # - Send syslog events over the network (RFC3164) to a target hostname:port. For example: localhost:514 + _syslogtcp: null + # - The STUN servers used for WebRTC, if not specified the Google and Mozilla servers and used when the server is not in LAN mode. + _webrtcConfig: + iceServers: + - urls: "" + # - Enabled the MeshCentral built-in Crowdsec bouncer. This section is passed directly to the bouncer, all of the settings are documented at https://www.npmjs.com/package/@crowdsec/express-bouncer + _crowdsec: + # - The URL of your LAPI instance. Ex: http://localhost:8080 + url: null + # - The bouncer key (generated via cscli). + apiKey: null + # - Action to perform if the CrowdSec agent can't be contacted. Options: bypass | captcha | ban + failbackRemediation: ban + autobackup: + mongoDumpPath: /usr/bin/mongodump + backupIntervalHours: 24 + keepLastDaysBackup: 10 + zipPassword: "" + backupPath: /opt/meshcentral/meshcentral-backup + # - Enabled automated upload of the server backups to a Google Drive account, once enabled you need to go in "My Server" tab as administrator to associate the account. + _googleDrive: + # - The name of the folder to create in the Google Drive account. + folderName: MeshCentral-Backups + # - The maximum number of files to keep in the Google Drive folder, older files will be removed if needed. + maxFiles: 10 + # - Enabled automated upload of the server backups to a WebDAV account. + _webdav: + # - WebDAV account URL. + url: "" + # - WebDAV account username. + username: "" + # - WebDAV account password. + password: "" + # - The name of the folder to create in the WebDAV account. + folderName: MeshCentral-Backups + # - The maximum number of files to keep in the WebDAV folder, older files will be removed if needed. + maxFiles: 10 + _redirects: + meshcommander: https://www.meshcommander.com/ + # - This section described a policy for how many times an IP address is allowed to attempt to login incorrectly. By default it's 10 times in 10 minutes, but this can be changed here. + maxInvalidLogin: + # - Ranges of IP addresses that are not subject to invalid login limitations. For example: 192.168.1.0/24,172.16.0.1 + _exclude: "" + # - Time in minutes over which the a maximum number of invalid login attempts is allowed from an IP address. + time: 10 + # - Maximum number of invalid login attempts from an IP address in the time period. + count: 10 + # - Additional time in minute that login attempts will be denied once the invalid login limit is reached. + coolofftime: 30 + # - This section described a policy for how many times an IP address is allowed to attempt to perform two-factor authentication (2FA) incorrectly. By default it's 10 times in 10 minutes, but this can be changed here. + maxInvalid2fa: + # - Ranges of IP addresses that are not subject to invalid 2FA limitations. For example: 192.168.1.0/24,172.16.0.1 + _exclude: "" + # - Time in minutes over which the a maximum number of invalid 2FA attempts is allowed from an IP address. + time: 10 + # - Maximum number of invalid 2FA attempts from an IP address in the time period. + count: 10 + # - Additional time in minute that 2FA attempts will be denied once the invalid login limit is reached. + coolofftime: 30 + # - When present, this section will enable the Intel AMT provisioning server on the local network. This is used for Intel AMT bare-metal ACM activation. + _amtProvisioningServer: + # - Port number that provisioning server will listen to. + port: 9971 + # - The agent-less device group to add Intel AMT devices to once they are activated. Must be of format: mesh/domain/id + deviceGroup: null + # - The MEBX password to set during activation. This password must be at least 8 characters long and have 1 lower, 1 upper, 1 alpha-numeric and 1 non-alpha numeric character. + newMebxPassword: null + # - The trusted FQDN or provisioning server value the remote device will have. This can be set in MEBx or using the DHCP server option 15 on the local network. + trustedFqdn: null + # - The IP address of this server. This address will be used when creating the USB setup.bin file to indicate what IP address to send the hello data to. + ip: null + plugins: + enabled: false + # - Connects MeshCentral to the SendGrid email server, allows MeshCentral to send email messages for 2FA or user notification. + _sendgrid: + # - Email address used in the messages from field. + from: null + # - The SendGrid API key. + apiKey: null + # - When set to false, the email format and DNS MX record are not checked. + verifyemail: true + _smtp: + # - Optional hostname of the client, this defaults to the hostname of the machine. This is useful for SMTP relays. + name: null + # - Hostname of the SMTP server. + host: null + # - SMTP server port number. + port: null + # - Email address used in the messages from field. + from: null + tls: true + _auth: + clientId: null + clientSecret: null + refreshToken: null + tlscertcheck: true + tlsstrict: true + # - When set to false, the email format and DNS MX record are not checked + verifyemail: true + # - Connects MeshCentral to a SMS text messaging provider, allows MeshCentral to send SMS messages for 2FA or user notification. Options: One of the following blocks + _sms: + # - twillio + provider: twillio + sid: null + auth: null + from: null + # # - plivo + # provider: plivo + # id: null + # token: null + # from: nyll + # # - telnyx + # provider: telnyx + # apikey: null + # from: null + # # - url + # provider: url + # url: "tc.common.names.fullname" + # - This section allow MeshCentral to send messages over user messaging networks like Telegram + _messaging: + # - Configure Telegram messaging system + _telegram: + apiid: "" + apihash: "" + session: "" + # - Configure Discord messaging system + _discord: + # - An optional HTTP link to the discord server the user must join to get notifications. + serverurl: "" + # - A Discord bot token that MeshCentral will use to login to Discord. + token: "" + # - Configure XMPP messaging system + _xmpp: + service: "" + credentials: + username: "" + password: "" + # - Any settings in this section is used as default setting for all domains + _domaindefaults: + title: Default Title + domains: + "": + # - HTTPS URL when to get the TLS certificate that MeshAgent's will see when connecting to this server. This setting is used when a reverse proxy like Traefik is used in front of MeshCentral. + certUrl: https://mc.domain.com + # - The title of this web site. All web pages will have this title. + title: MeshCentral + # - Secondary title text that is placed on the upper right on the title on many web pages. + title2: TrueCharts + # - When enabled, the server will send reduced sized web pages. + minify: true + # - 0 = User selects day/night mode, 1 = Always night mode, 2 = Always day mode + nightMode: 0 + # - Valid numbers are 1 and 2, changes the style of the login page and some secondary pages. + siteStyle: 2 + # - When set to false, this setting will disable the mobile site. + mobileSite: true + # - Set to true to enable IP KVM device support in this domain. + ipkvm: false + # - When set to true, allow new user accounts to be created from the login page. + newAccounts: false + # - When set this password will be required in order to create a new account from the login screen. + _newAccountsPass: "" + # - When set to true, users will get a CAPTCHA when creating a new account from the login screen. + _newAccountsCaptcha: false + _newAccountsUserGroups: [] + # - When enabled, the username of each account is also the email address of the account. + userNameIsEmail: false + _newAccountsRights: [] + _newAccountEmailDomains: [] + # - The maximum number of devices a user can see on the devices page at the same time. By default all devices will show, but this may need to be limited on servers with large number of devices. + _maxDeviceView: 1000 + _userQuota: 1048576 + _meshQuota: 248576 + # - Requires that users add the value ?key=xxx in the URL in order to see the web site. + _loginKey: [] + # - Requires that agents add the value ?key=xxx in the URL in order to connect. This is not automatic and needs to be manually added in the meshagent.msh file. + _agentKey: [] + # - Web site .png logo file that is 450x66 in size placed in meshcentral-data that is used on the top of many pages. + _titlePicture: "" + # - Web site .png logo file placed in meshcentral-data that used on the login page when sitestyle is 2. + _loginPicture: "" + # - Redirects HTTP root requests to this URL. When in use, direct users to /login to see the normal login page. + _rootRedirect: "" + # - Redirects HTTP root requests to this URL only where user is not already logged in. When in use, direct users to /login to see the normal login page. + _unknownUserRootRedirect: "" + # - Text that will be shown on the login screen. + welcomeText: Welcome to TrueCharts MeshCentral + # - Name of the PNG or JPEG file that will be shown on the login screen. Put this file in the meshcentral-data folder and place the file name here. + _welcomePicture: null + # - When enabled, the welcomePicture will show as a fullscreen background on the login screen. + _welcomePictureFullScreen: false + # - Text that will be displayed on the top of the messenger window when no username or device name is displayed. + _meshMessengerTitle: TrueCharts MeshCentral + # - Name of a .png image file that is placed in meshcentral-data that is displayed on the top of the messenger web page. When null, the default image is displayed. + _meshMessengerPicture: null + # - Sum of: 1 = Hide header, 2 = Hide tab, 4 = Hide footer, 8 = Hide title, 16 = Hide left bar, 32 = Hide back buttons + _hide: 0 + # - This is a HTML string displayed at the bottom of the web page when a user is logged in. + _footer: null + # - This is a HTML string displayed at the bottom of the web page when a user is not logged in. + _loginfooter: null + # - Allow users to save SSH, RDP, VNC device credentials on the server that can be used by any other user. + _allowSavingDeviceCredentials: true + # - This value is normally auto-detected, when set to true, MeshCentral assumes that the TLS certificate comes from a trusted CA and will insure download tools perform certificate checking. + _trustedCert: null + # - When set to false, the desktop/terminal sharing link feature is not available. + _guestDeviceSharing: + # - When set, limits the maximum length of a guest session, in minutes. + maxSessionTime: null + # - Number of days a device can be inactive before it's removed. 0 disables this feature. Device group setting will override this value. + _autoRemoveInactiveDevices: 0 + # - When set to true, the devices search box will match on both the server name and client name of a device. + _deviceSearchBarServerAndClientName: false + # - When set to true, MeshCentral Assistant can create it's own guest sharing links. + _agentSelfGuestSharing: + # - When set, limits the self-created guest sharing link to this number of minutes. + expire: null + # - When set, your can try click the run button to run on of these scripts on the remote device. + _PreconfiguredScripts: + # - Name of the script. + - name: null + # - The type of script. Options: bat | ps1 | sh | agent + type: null + # - How to run this script, does not apply to agent scripts. Options: agent | userfirst | user + runas: null + # - The command or \\r\\n separated commands to run, if set do not use the file key. + _cmd: null + # - The script file path and name, if set do not use the cmd key. This file path starts in meshcentral-data. + file: null + # - When set, you can right click on the input button in the desktop tab and instantly remotely type one of these pre-configured strings. + _preConfiguredRemoteInput: + # - Name of the text string. + - name: null + # - Text string that will be remotely typed when selected. + value: null + _altMessenging: + # - Name of the alternative messaging service, for example: "Jitsi". + - name: null + # - URL to the alternative messaging services, for example: "https://meet.jit.si/myserver-{0}", for a device {0}, {1}, {2}, {3} is the device id. For a user, {0} is the userid, {1} is full userid with dashes, {2} is real name with no spaces, {3} is real name with dash instead of spaces. + url: null + # - If specified, this is the URL that is used on the administrator side, for example: "https://meet.jit.si/myserver-{0}", for a device {0}, {1}, {2}, {3} is the device id. For a user, {0} is the userid, {1} is full userid with dashes, {2} is real name with no spaces, {3} is real name with dash instead of spaces. + localurl: null + # - Indicate if this button should be shown in the user or device type. If omitted, it will be displayed in both. Options: null | user | device + type: null + deviceMeshRouterLinks: + # - Display a RDP link in the device tab when supported + rdp: true + # - Display a SSH link in the device tab when supported + ssh: true + # - Display a SCP link in the device tab when supported + scp: true + _extralinks: + # - Name of the link to be displayed on the web site. + - name: null + # - Protocol. Valid values are: Options: custom | http | https | rdp | ssh | scp | mcrdesktop | mcrfiles. + protocol: null + # - The port on the remote device. + port: null + # - Target IP address. If not specified, the target of the connection is the remote device running the MeshAgent. + ip: null + # - The local port MeshCentral Router would bind to. By default, a random available port is used. + localport: null + # - Array of node// or mesh// or tag: strings. When set, the link will only show up for the specified devices, device groups or device tag. + filter: [] + myServer: + # - Allows administrators to backup the server from the My Server tab. This option can only enabled when the NeDB database is in use. For other databases, this option disabled and the setting is ignored. + Backup: true + # - Allows administrators to restore the server from the My Server tab. This option can only enabled when the NeDB database is in use. For other databases, this option disabled and the setting is ignored. + Restore: true + # - Allows administrators to see the server crash log the server from the My Server tab. + ErrorLog: true + # - Allows administrators to access the server console from the My Server tab. + Console: true + # - Allows administrators to access the server trace tab from from the My Server tab. + Trace: true + _passwordRequirements: + # - Minimum number of characters allowed for the account password. + min: null + # - Maximum number of characters allowed for the account password. + max: null + # - Minimum number of upper case characters required in the password. + upper: null + # - Minimum number of lower case characters required in the password. + lower: null + # - Minimum number of numeric characters required in the password. + numeric: null + # - Minimum number of non-alpha-numeric characters required in the password. + nonalpha: null + # - Number of days after which the user is required to change the account password. + reset: null + # - Set to false to disable email 2FA. + email2factor: true + # - Set to false to disable SMS 2FA. + sms2factor: true + # - Set to false to disable push notification 2FA. + push2factor: true + # - Set to false to disable one-time-password 2FA. + otp2factor: true + # - Set to false to disable user messaging 2FA. + msg2factor: true + # - Set to false to disable 2FA backup codes. + backupcode2factor: true + # - Set to false to disable single 2FA warning. + single2factorWarning: true + # - When set to true, prevents any changes to 2FA. + lock2factor: false + # - Requires that all accounts setup 2FA. + force2factor: false + # - IP addresses where 2FA login is skipped, for example: 127.0.0.1,192.168.2.0/24 + skip2factor: null + # - Number of old passwords the server should remember and not allow the user to switch back to. + oldPasswordBan: null + # - Uses WildLeek to block use of the 10000 most commonly used passwords. + banCommonPasswords: true + # - Allows users to create alternative username/passwords for their account. Set to false to disallow all users, or set to a userid array to only all some users. + loginTokens: true + # - Maximum about of time the to wait for a 2FA token on the login page in seconds. + twoFactorTimeout: + # - If true and user account has FIDO key setup, 2FA login screen will automatically request FIDO 2FA. + autofido2fa: false + # - Maximum number of FIDO/YubikeyOTP hardware 2FA keys that can be setup in a user account. + maxfidokeys: null + # - If set to false, the account reset option on the login screen will not be available to users. + allowaccountreset: true + # - Number of days that a user is allowed to remember this device for when completing 2FA. Set this to 0 to remove this option. + _twoFactorCookieDurationDays: 30 + # - Type of user authentication to use, this can be SSPI on Windows or LDAP. If not set, username/password is used. Options: null | sspi | ldap + _auth: null + # - The LDAP value to use as a user's unique account identifier. Use "ldapUserKey" or "ldapUserBinaryKey". + _ldapUserKey: null + # - The LDAP value to use as a user's unique account identifier, when specified in this field, the values will be HEX converted. + _ldapUserBinaryKey: objectSid + # - The LDAP value to use for the user name, you can also compose the name by setting this value to, for example: "{{{givenName}}} {{{sn}}}" + _ldapUserName: displayName + # - The LDAP value to use for the user's email address. + _ldapUserEmail: mail + # - The LDAP value to use for the user's real name, you can also compose the name by setting this value to, for example: "{{{givenName}}} {{{sn}}}" + _ldapUserRealName: name + # - The LDAP value to use for the user's phone number. + _ldapUserPhoneNumber: telephoneNumber + # - The LDAP value to use for the user's image. + _ldapUserImage: thumbnailPhoto + # - When set to a filename, for example /opt/meshcentral/meshcentral-data/ldapusers.txt, MeshCentral will save the LDAP user object to this file each time a user logs in. This is used for debugging LDAP issues. + _ldapSaveUserToFile: null + # - The LDAP value to use for the user's group memberships. + _ldapUserGroups: memberOf + # - When set to true or set to an object, MeshCentral will synchronize LDAP user memberships to MeshCentral user groups. + _ldapSyncWithUserGroups: + # - When set to a string or array of strings, only LDAP membership groups that includes one of the strings will be synchronized with MeshCentral user groups. + filter: [] + # - A list of LDAP groups. Users must be part of at least one of these groups to allow login. If null, all users are allowed to login. + _ldapUserRequiredGroupMembership: [] + # - LDAP options passed to ldapauth-fork + _ldapOptions: + URL: "ldap://1.2.3.4:389" + BindDN: "CN=svc_meshcentral,CN=Users,DC=meshcentral,DC=local" + BindCredentials: "Password.1" + SearchBase: "DC=meshcentral,DC=local" + SearchFilter: "(sAMAccountName={{username}})" + # - Enabled a feature where you can set one or more invitation codes in a device group. You can then give a invitation link to users who can use it to download the agent. + _agentInviteCodes: false + # - When enabled, all newly installed MeshAgents will be instructed to no use a HTTP/HTTPS proxy even if one is configured on the remote system + _agentNoProxy: false + # - This section is used to indicate if parts of the meshagent.tag file should be used to set server-side device properties. + _agentTag: + # - Action taken if one of the lines in meshagent.tag contains ~ServerName:name. 0=Ignore, 1=Set. + ServerName: 0 + # - Action taken if one of the lines in meshagent.tag contains ~ServerDesc:desc. 0=Ignore, 1=Set, 2=SetIfEmpty. + ServerDesc: 0 + # - Action taken if one of the lines in meshagent.tag contains ~ServerTags:tag1,tag2,tag3. 0=Ignore, 1=Set, 2=SetIfEmpty, 3=Append. + ServerTags: 0 + # - Enables the geo-location feature and device location map in the user interface, this feature is not being worked on. + geoLocation: true + # - When enabled, activates the built-in web-based VNC client. + novnc: true + # - When enabled, activates the built-in web-based RDP client. + mstsc: true + # - When enabled, activates the built-in web-based SSH client. + ssh: true + # - Path where to find custom email templates for this domain. + _webEmailsPath: null + _customUI: null + # - This section is used to customize user consent prompts, these show up when asking if a remote session is allowed or not. + _consentMessages: + Title: null + Desktop: null + Terminal: null + Files: null + # - How long in seconds to show the user consent dialog box. + consentTimeout: 30 + # - If true, user consent is accepted after the timeout. + autoAcceptOnTimeout: false + # - This section is user to customize user notifications when a remote desktop, terminal or file session is connected to a remote system. + _notificationMessages: + Title: null + Desktop: null + Terminal: null + Files: null + # - Use this section to customize the agent branding. + _agentCustomization: + # - The name of the agent as displayed to the user. + displayName: MeshCentral Agent + # - The description of the agent as displayed to the user. + description: Mesh Agent Background Service + # - This will be used as the path to install the agent, by default this is 'Mesh Agent' in Windows and 'meshagent' in other OS's. + companyName: Mesh Agent + # - The name of the background service, by default this is 'Mesh Agent' in Windows and 'meshagent' in other OS's but should be set to an all lower case, no space string. + serviceName: Mesh Agent + # - Text string to show in the agent installation dialog box. + installText: null + # - The filename of a image file in .png format located in meshcentral-data to display in the MeshCentral Agent installation dialog, image should be square and from 64x64 to 200x200. + image: null + # - The agent filename. + fileName: meshagent + # - Foreground text color, valid values are RBG in format 0,0,0 to 255,255,255 or format #000000 to #FFFFFF. + foregroundColor: null + # - Background color, valid values are RBG in format 0,0,0 to 255,255,255 or format #000000 to #FFFFFF. + backgroundColor: null + # - Use this section to set resource metadata of the Windows agents prior to signing. In Windows, you can right-click and select properties to view these values. + _agentFileInfo: + # - Sets the agent icon, this is the name of a .ico file with the file placed in the meshcentral-data folder. + icon: null + # - Executable file description. + fileDescription: null + # - Executable file version, in the form of 'n.n.n.n', for example: '1.2.3.4'. + fileVersion: null + # - Executable internal name. + internalName: null + # - Executable legal copyright. + legalCopyright: null + # - Executable original file name. + originalFilename: null + # - Executable product name. + productName: null + # - Executable product version. Any string format will work, but a alphabetic character is required for this value to show correctly in the Windows property box. For example: 'v1.2.3.4' will work, but '1.2.3.4' will not. + productVersion: null + # - Use this section to customize the MeshCentral Assistant. + _assistantCustomization: + # - Name to show as MeshCentral Assistant dialog title. + title: MeshCentral Assistant + # - The filename of a image file in .png format located in meshcentral-data to display in MeshCentral Assistant, image should be square and from 64x64 to 128x128. + image: null + # - The MeshCentral Assistant filename. + fileName: meshagent + # - Use this section to customize the MeshCentral Agent for Android. + _androidCustomization: + # - Displayed on top of the MeshCentral Agent for Android. + title: MeshCentral Agent + # - Subtitle displayed until the title on the toolbar. + subtitle: null + # - The filename of a image file in .png format located in meshcentral-data to display in MeshCentral Agent for Android, image should be square and from 64x64 to 128x128. + image: null + # - If set, a user from a banned IP address will be redirected to this URL." + _ipBlockedUserRedirect: null + # - When set, requires that a browser request have set HTTP header to allow user login. Example: '{ "Sec-Fetch-Dest": "iframe" }' + _userRequiredHttpHeader: null + # - When set, only users from allowed IP address ranges can connect to the server. Example: "192.168.2.100,192.168.1.0/24" + _userAllowedIP: null + # - When set, users from these denied IP address ranges will not be able to connect to the server. Example: "192.168.2.100,192.168.1.0/24" + _userBlockedIP: null + # - When set, only agents from allowed IP address ranges can connect to the server. Example: "192.168.2.100,192.168.1.0/24" + _agentAllowedIP: null + # - When set, agents from these denied IP address ranges will not be able to connect to the server. Example: "192.168.2.100,192.168.1.0/24" + _agentBlockedIP: null + # - When set, idle users will be disconnected after a set amounts of minutes. + _userSessionIdleTimeout: null + # - Use this section to require user consent for this domain. + _userConsentFlags: + # - Enable desktop notification for this domain. + desktopnotify: false + # - Enable terminal notification for this domain. + terminalnotify: false + # - Enable files notification for this domain. + filenotify: false + # - Enable desktop prompt for this domain. + desktopprompt: false + # - Enable terminal user prompt for this domain. + terminalprompt: false + # - Enable files prompt for this domain. + fileprompt: false + # - Enable remote desktop privacy bar for this domain. + desktopprivacybar: false + # - When users navigate thru the web interface, the URL on top will change to point to the current screen. This allows a user to refresh or bookmark the URL and come back to the correct screen. Setting false here will disable this feature. + _urlSwitching: true + # - This is the text that will be shown in the remote desktop privacy bar. You can use {0} to display the account realname or {1} to display the account identifier in the string. + _desktopPrivacyBarText: null + _limits: + # - Maximum number of devices in this domain. + MaxDevices: null + # - Maximum number of devices in this domain. + MaxUserAccounts: null + # - Maximum number of user sessions that can connect to this server for this domain. + MaxUserSessions: null + # - Maximum number of agents that can connect to this server for this domain. + MaxAgentSessions: null + # - Maximum number of sessions a single user can have. Each time a user opens a new browser tab or opens a new browser on a different computer, a new user session is created. + MaxSingleUserSessions: null + # - Values that affect the files feature + _files: + # - When false, removes the 'SFTP Connect' button from the files tab unless this is the only possible option. + sftpConnect: true + # - Values that affect the terminal feature + _terminal: + # - When false, removes the 'SSH Connect' button from the terminal tab unless this is the only possible option. + sshConnect: true + # - Indicate what terminal options are available when the user clicks the right mouse button on the terminal connect button. Options: any | root | user | login + linuxShell: any + # - Indicate what string the agent must write to the shell after starting a terminal session + launchCommand: + # - String to write after opening a Linux terminal. + linux: alias ls=\\'ls --color=auto\\';clear\\n + # - String to write after opening a macOS terminal. + darwin: null + # - String to write after opening a FreeBSD terminal. + freebsd: null + # - Values that affect the desktop feature" + _desktop: + # - When set to true, the remote desktop feature is view only. + viewonly: false + # - List of local network Intel AMT scanning options offered in the user interface. For example ["LabNetwork 192.168.15.0/23", "SalesNetwork 192.168.8.0/24"]. + _amtScanOptions: + - Network 192.168.1.0/24 + # - Information passed to the AMT manager module that impacts all Intel AMT device managed within this domain. + _amtManager: + # - When set to false, MeshCentral will use TLS to connect to Intel AMT, this is not recommended. + TlsConnections: true + # - When set to false, MeshCentral will not attempt a TLS ACM activation on Intel AMT v14+ + TlsAcmActivation: false + # - List of username and passwords to try when connecting to Intel AMT. + AdminAccounts: + # - Intel AMT administrator username. + - user: admin + # - Intel AMT administrator password. + pass: null + # - List of up to 4 domain suffixes to configure in Intel AMT when activating CIRA. + EnvironmentDetection: [] + # - Specifies a certificate and private key to use to issue Intel AMT TLS certificates. By default the MeshCentral self-signed root certificate is used. + TlsRootCert: + # - Name of the certificate file that is in .p12 or .pfx format in meshcentral-data, use this with certpfxpass. + certpfx: null + # - Password for the file specified in certpfx. + certpfxpass: null + # - Name of the certificate file in PEM format located in meshcentral-data. Using this with keyfile. + certfile: null + # - Name of the private key file in PEM format located in meshcentral-data. Using this with certfile. + keyfile: null + # - List of WIFI profiles to setup in any managed Intel AMT device with a WIFI network interface. + WifiProfiles: + # - WIFI profile name, if not specified the SSID is used. + name: null + # - SSID of the WIFI station. + ssid: null + # - WIFI authentication. Options: wpa-psk | wpa2-psk | wpa-8021x | wpa2-802.1x | wpa3-sae-802.1x | wpa3-owe-802.1x + authentication: wpa2-psk + # - WIFI encryption. Options: ccmp-aes | tkip-rc4 + encryption: ccmp-aes + # - Password on the WIFI station + password: null + # - 802.1x settings for this WIFI profile. Only required if the WIFI authentication type has 802.1x + _802.1x: + # - Identifies the authentication protocol used to authenticate the access requestor to the AAA server. Options: EAP-TLS | EAP-TTLS/MSCHAPv2 | PEAPv0/EAP-MSCHAPv2 | PEAPv1/EAP-GTC | EAP-FAST/MSCHAPv2 | EAP-FAST/GTC | EAP-MD5 | EAP-PSK | EAP-SIM | EAP-AKA | EAP-FAST/TLS | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 + authenticationProtocol: null + # - Determines the comparison algorithm used between the ServerCertificateName value and the subject name field of the certificate presented by the AAA server. Options: Fullname | DomainSuffix | 2 | 3 + serverCertificateNameComparison: FullName + # - The name compared against the subject name field in the certificate provided by the AAA server. + serverCertificateName: null + # - Indicates the activity setting of the 802.1X module in H0 state + availableInS0: true + # - A credential used by the supplicant and AAA server to establish a mutually authenticated encrypted tunnel for confidential user authentication. + protectedAccessCredentialHex: null + # - Optional password to extract the PAC (Protected Access Credential) information from the PAC data. + pacPassword: null + # - The domain within which Username is unique. + domain: null + # - Within the domain specified by Domain, Identifies the user that is requesting access to the network. + username: null + # - The password associated with the user identified by Username and Domain. + password: null + # - A string presented to the authentication server in 802.1x protocol exchange + roamingIdentity: null + # - Timeout in seconds, in which the Intel(R) AMT will hold an authenticated 802.1X session. + pxeTimeoutInSeconds: 120 + # - 802.1x settings for the Intel AMT Wired interface. If set to false, any existing 802.1x wired profile will be removed from Intel AMT. + _802.1x: + # - Identifies the authentication protocol used to authenticate the access requestor to the AAA server. Options: EAP-TLS | EAP-TTLS/MSCHAPv2 | PEAPv0/EAP-MSCHAPv2 | PEAPv1/EAP-GTC | EAP-FAST/MSCHAPv2 | EAP-FAST/GTC | EAP-MD5 | EAP-PSK | EAP-SIM | EAP-AKA | EAP-FAST/TLS | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 + authenticationProtocol: null + # - Determines the comparison algorithm used between the ServerCertificateName value and the subject name field of the certificate presented by the AAA server. Options: Fullname | DomainSuffix | 2 | 3 + serverCertificateNameComparison: FullName + # - The name compared against the subject name field in the certificate provided by the AAA server. + serverCertificateName: null + # - Indicates the activity setting of the 802.1X module in H0 state + availableInS0: true + # - A credential used by the supplicant and AAA server to establish a mutually authenticated encrypted tunnel for confidential user authentication. + protectedAccessCredentialHex: null + # - Optional password to extract the PAC (Protected Access Credential) information from the PAC data. + pacPassword: null + # - The domain within which Username is unique. + domain: null + # - Within the domain specified by Domain, Identifies the user that is requesting access to the network. + username: null + # - The password associated with the user identified by Username and Domain. + password: null + # - A string presented to the authentication server in 802.1x protocol exchange + roamingIdentity: null + # - Timeout in seconds, in which the Intel(R) AMT will hold an authenticated 802.1X session. + pxeTimeoutInSeconds: 120 + _amtAcmActivation: + log: null + # - When set to true, the certificate common name needs to match exactly the Intel AMT trusted FQDN or DHCP Option 15. If false, some flexibility may be given to the matching. + strictCommonName: false + certs: + certfiles: null + keyfile: null + # - This is used to create HTTP redirections. For example setting "redirects": { "example": "https://example.com" } will make it so that anyone accessing /example on the server will get redirected to the specified URL. + _redirects: + example: https://example.com + example1: https://example1.com + _yubikey: + id: null + secret: null + proxy: null + _httpHeaders: null + # - Key and values to add to the MeshAgent .msh file + agentConfig: + # - Needed if you use traefik https://github.com/traefik/traefik/issues/4487 + - webSocketMaskOverride=1 + # - Key and values to add to the MeshCentral Assistant .msh file + _assistantConfig: [] + # - When false, users can't set the clipboard of a remove device. + clipboardGet: true + # - When false, users can't get the clipboard of a remove device. + clipboardSet: true + # - When false, removes the local recording feature on remote desktop. + localSessionRecording: true + _sessionRecording: + # - When enabled, only device users with the session recording feature turned on will be recorded. When false, all users are recorded. + onlySelectedUsers: false + # - When enabled, only device user groups with the session recording feature turned on will be recorded. When false, all users are recorded. + onlySelectedUserGroups: false + # - When enabled, only device groups with the session recording feature turned on will be recorded. When false, all devices are recorded. + onlySelectedDeviceGroups: false + # - The file path where recording files are kept. + filepath: null + # - If true, automatically index remote desktop recordings so that the plays can skip to any place in the file. + index: false + # - Maximum number of recording files to keep. + maxRecordings: null + # - Maximum number of days to keep a recording. + maxRecordingDays: null + # - Maximum number of recordings in megabytes. Once exceed, remove the oldest recordings. + maxRecordingSizeMegabytes: null + # - This is an array: 1 = Terminal, 2 = Desktop, 5 = Files, 100 = Intel AMT WSMAN, 101 = Intel AMT Redirection, 200 = Messenger + _protocols: + - 1 + - 5 + # - When set to false, hides the username and password prompt on login screen. + _showPasswordLogin: true + # - Connects MeshCentral to the SendGrid email server, allows MeshCentral to send email messages for 2FA or user notification. + _sendgrid: + # - Email address used in the messages from field. + from: null + # - The SendGrid API key. + apiKey: null + # - When set to false, the email format and DNS MX record are not checked. + verifyemail: true + # - Connects MeshCentral to a SMTP email server, allows MeshCentral to send email messages for 2FA or user notification. + _smtp: + # - Optional hostname of the client, this defaults to the hostname of the machine. This is useful for SMTP relays. + name: null + # - Hostname of the SMTP server. + host: null + # - SMTP server port number. + port: null + # - Email address used in the messages from field. + from: null + tls: true + _auth: + clientId: null + clientSecret: null + refreshToken: null + tlscertcheck: true + tlsstrict: true + # - When set to false, the email format and DNS MX record are not checked + verifyemail: true + # - Makes MeshCentral send emails using the Unix sendmail command. Allows MeshCentral to send email messages for 2FA or user notification. + _sendmail: + # - Possible values are unix or windows + newline: unix + # - Path to the sendmail command + path: sendmail + # - Array or arguments to pass to sendmail + _args: [] + _authStrategies: + _twitter: + # - Required, this is the URL that your SSO provider sends auth approval to. + callbackurl: null + newAccounts: false + newAccountsUserGroups: [] + clientid: null + clientsecret: null + # - Then set, the user will be redirected to this URL when hitting the logout link + logouturl: null + _google: + # - Required, this is the URL that your SSO provider sends auth approval to. + callbackurl: null + newAccounts: false + newAccountsUserGroups: [] + clientid: null + clientsecret: null + # - Then set, the user will be redirected to this URL when hitting the logout link + logouturl: null + _github: + # - Required, this is the URL that your SSO provider sends auth approval to. + callbackurl: null + newAccounts: false + newAccountsUserGroups: [] + clientid: null + clientsecret: null + # - Then set, the user will be redirected to this URL when hitting the logout link + logouturl: null + _reddit: + # - Required, this is the URL that your SSO provider sends auth approval to. + callbackurl: null + newAccounts: false + newAccountsUserGroups: [] + clientid: null + clientsecret: null + # - Then set, the user will be redirected to this URL when hitting the logout link + logouturl: null + _azure: + # - Required, this is the URL that your SSO provider sends auth approval to. + callbackurl: null + newAccounts: false + newAccountsUserGroups: [] + clientid: null + clientsecret: null + tenantid: null + # - Then set, the user will be redirected to this URL when hitting the logout link + logouturl: null + _jumpcloud: + # - Required, this is the URL that your SSO provider sends auth approval to. + callbackurl: null + newAccounts: false + newAccountsUserGroups: [] + entityid: null + idpurl: null + cert: null + # - Then set, the user will be redirected to this URL when hitting the logout link + logouturl: null + _saml: + # - Required, this is the URL that your SSO provider sends auth approval to. + callbackurl: null + disableRequestedAuthnContext: false + newAccounts: false + newAccountsUserGroups: [] + newAccountsRights: [] + entityid: null + idpurl: null + cert: null + # - Then set, the user will be redirected to this URL when hitting the logout link + logouturl: null + _oidc: + # - If set, this will be used as the authorization URL. (If set tokenURL and userInfoURL need set also) + authorizationURL: null + # - Required, this is the URL that your SSO provider sends auth approval to. + callbackurl: null + clientid: null + clientsecret: null + # - Full URL of SSO portal + issuer: null + # - If set, this will be used as the token URL. (If set authorizationURL and userInfoURL need set also) + tokenURL: null + # - If set, this will be used as the user info URL. (If set authorizationURL and tokenURL need set also) + userInfoURL: null + # - Then set, the user will be redirected to this URL when hitting the logout link + logouturl: null + newAccounts: true + groups: + # - When set, the user must be part of one of the OIDC user groups to login to MeshCentral. + required: [] + # - When set, users part of these groups will be promoted with site administrator in MeshCentral, users that are not part of these groups will be demoted. + siteadmin: [] + sync: + enabled: false + # - When set, limits what OIDC groups are mirrored into MeshCentral user groups. + filter: [] +service: + main: + ports: + main: + # Only use HTTPS if meshcental handles the certs + protocol: http + port: 10205 + # mps: + # enabled: true + # ports: + # mps: + # enabled: true + # port: 4433 + # targetPort: 4433 + # amtprovisioner: + # enabled: true + # ports: + # amtprovisioner: + # enabled: true + # port: 9971 + # targetPort: 9971 +cnpg: + main: + enabled: true + username: meshcentral + database: meshcentral +persistence: + data: + enabled: true + mountPath: /opt/meshcentral/meshcentral-data + size: 256Gi + files: + enabled: true + mountPath: /opt/meshcentral/meshcentral-files + size: 256Gi + web: + enabled: true + mountPath: /opt/meshcentral/meshcentral-web + size: 256Gi + backups: + enabled: true + mountPath: /opt/meshcentral/meshcentral-backup + size: 256Gi + configfile: + enabled: true + type: secret + readOnly: true + defaultMode: "0600" + objectName: mesh-secret + mountPath: /opt/meshcentral/meshcentral-data/config.json + subPath: config.json +portal: + open: + enabled: true diff --git a/stable/meshcentral/14.1.13/questions.yaml b/stable/meshcentral/14.1.13/questions.yaml new file mode 100644 index 0000000000..dfbe911baa --- /dev/null +++ b/stable/meshcentral/14.1.13/questions.yaml @@ -0,0 +1,4721 @@ +groups: + - name: Container Image + description: Image to be used for container + - name: General Settings + description: General Deployment Settings + - name: Workload Settings + description: Workload Settings + - 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: Postgresql + description: Postgresql + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_tcportal-open_protocol" + host: + - "$kubernetes-resource_configmap_tcportal-open_host" + ports: + - "$kubernetes-resource_configmap_tcportal-open_port" +questions: + - variable: global + group: General Settings + label: "Global Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: stopAll + label: Stop All + description: "Stops All Running pods and hibernates cnpg" + schema: + type: boolean + default: false + - variable: workload + group: "Workload Settings" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type (Advanced) + schema: + type: string + default: Deployment + enum: + - value: Deployment + description: Deployment + - value: DaemonSet + description: DaemonSet + - variable: replicas + label: Replicas (Advanced) + description: Set the number of Replicas + schema: + type: int + show_if: [["type", "!=", "DaemonSet"]] + default: 1 + - variable: podSpec + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: containers + label: Containers + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: Main Container + schema: + additional_attrs: true + type: dict + attrs: + - variable: envList + label: Extra Environment Variables + description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." + 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: extraArgs + label: Extra Args + schema: + type: list + default: [] + items: + - variable: arg + label: Arg + schema: + type: string + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: command + label: Command + schema: + type: list + default: [] + items: + - variable: param + label: Param + schema: + type: string + - variable: meshcentral + group: App Configuration + label: MeshCentral Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: settings + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: aliasPort + label: aliasPort + description: The actual main port as seen externally on the Internet, this setting is often used when a reverse-proxy is used. + schema: + type: int + required: true + default: 443 + - variable: cert + label: cert + description: Set this to the primary DNS name of this MeshCentral server. + schema: + type: string + required: true + default: "" + - variable: tlsOffload + label: tlsOffload + description: When true, indicates that a TLS offloader is in front of the MeshCentral server. More typically, set this to the IP address of the reverse proxy or TLS offloader so that IP forwarding headers will be trusted. For example 172.16.0.0/16 + schema: + type: string + default: "172.16.0.0/16" + - variable: trustedProxy + label: trustedProxy + description: Trust forwarded headers from these IPs or domains. Providing the magic string "CloudFlare" will cause the server to download the IP address list of trusted CloudFlare proxies directly from CloudFlare on each server start. For example 172.16.0.0/16. This should be left empty if traefik is used. + schema: + type: string + default: "" + - variable: WANonly + label: WANonly + description: When enabled, only MeshCentral WAN features are enabled and agents will connect to the server using a well known DNS name. + schema: + type: boolean + default: false + - variable: LANonly + label: LANonly + description: When enabled, only MeshCentral LAN features are enabled and agents will find the server using multicast LAN packets. + schema: + type: boolean + default: false + - variable: webRTC + label: webRTC + description: When enabled, allows use of WebRTC to allow direct network traffic between the agent and browser. + schema: + type: boolean + default: false + - variable: compression + label: compression + description: Enables GZIP compression for web requests. + schema: + type: boolean + default: true + - variable: wsCompression + label: wsCompression + description: Enables server-side, websocket per-message deflate compression. + schema: + type: boolean + default: true + - variable: agentWsCompression + label: agentWsCompression + description: Enables agent-side, websocket per-message deflate compression. wscompression must also be true for this to work. + schema: + type: boolean + default: true + - variable: allowFraming + label: allowFraming + description: When enabled, the MeshCentral web site can be embedded within another website's iframe. + schema: + type: boolean + default: false + - variable: newAccounts + label: newAccounts + description: When set to true, allow new user accounts to be created from the login page. + schema: + type: boolean + default: false + - variable: allowHighQualityDesktop + label: allowHighQualityDesktop + description: When false, users will only be able to set remote desktop image quality to 60%, this can reduce server bandwidth usage. + schema: + type: boolean + default: true + - variable: agentLogDump + label: agentLogDump + description: Automatically downloads all agent error logs into meshcentral-data/agenterrorlogs.txt. + schema: + type: boolean + default: false + - variable: agentCoreDump + label: agentCoreDump + description: Automatically activates and transfers any agent crash dump files to the server in meshcentral-data/coredumps. + schema: + type: boolean + default: false + - variable: browserPing + label: browserPing + description: When specified, sends data to the browser at x seconds interval and expects a response from the browser. + schema: + type: int + required: true + default: -99 + - variable: browserPong + label: browserPong + description: When specified, sends data to the browser at x seconds interval. + schema: + type: int + required: true + default: -99 + - variable: agentPing + label: agentPing + description: When specified, sends data to the agent at x seconds interval and expects a response from the agent. + schema: + type: int + required: true + default: -99 + - variable: agentPong + label: agentPong + description: When specified, sends data to the agent at x seconds interval. + schema: + type: int + required: true + default: -99 + - variable: agentIdleTimeout + label: agentIdleTimeout + description: How much time in seconds with no traffic from an agent before dropping the agent connection. + schema: + type: int + required: true + default: -99 + - variable: maxInvalidLogin + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: time + label: time + description: Time in minutes over which the a maximum number of invalid login attempts is allowed from an IP address. + schema: + type: int + required: true + default: 10 + - variable: count + label: count + description: Maximum number of invalid login attempts from an IP address in the time period. + schema: + type: int + required: true + default: 10 + - variable: coolofftime + label: coolofftime + description: Additional time in minute that login attempts will be denied once the invalid login limit is reached. + schema: + type: int + required: true + default: 30 + - variable: exclude + label: exclude + description: Ranges of IP addresses that are not subject to invalid login limitations. For example 192.168.1.0/24,172.16.0.1 + schema: + type: string + default: "" + - variable: maxInvalid2fa + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: time + label: time + description: Time in minutes over which the a maximum number of invalid 2FA attempts is allowed from an IP address. + schema: + type: int + required: true + default: 10 + - variable: count + label: count + description: Maximum number of invalid 2FA attempts from an IP address in the time period. + schema: + type: int + required: true + default: 10 + - variable: coolofftime + label: coolofftime + description: Additional time in minute that 2FA attempts will be denied once the invalid login limit is reached. + schema: + type: int + required: true + default: 30 + - variable: exclude + label: exclude + description: Ranges of IP addresses that are not subject to invalid 2FA limitations. For example 192.168.1.0/24,172.16.0.1 + schema: + type: string + default: "" + - variable: autobackup + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: backupIntervalHours + label: backupIntervalHours + schema: + type: int + required: true + default: 24 + - variable: keepLastDaysBackup + label: keepLastDaysBackup + schema: + type: int + required: true + default: 10 + - variable: zipPassword + label: zipPassword + description: Leave empty for no password + schema: + type: string + private: true + default: "" + - variable: _setupWebDav + label: Backup to Web DAV + description: Enabled automated upload of the server backups to a WebDAV account. + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: webdav + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: url + label: url + description: WebDAV account URL. + schema: + type: string + default: "" + - variable: username + label: username + description: WebDAV account username. + schema: + type: string + default: "" + - variable: password + label: password + description: WebDAV account password. + schema: + type: string + private: true + default: "" + - variable: folderName + label: folderName + description: The name of the folder to create in the WebDAV account. + schema: + type: string + default: MeshCentral-Backups + - variable: maxFiles + label: maxFiles + description: The maximum number of files to keep in the WebDAV folder, older files will be removed if needed. + schema: + type: int + default: 10 + - variable: relayDNS + label: relayDNS + description: When set, relayPort value is ignored. Set this to a DNS name the points to this server. When the server is accessed using the DNS name, the main web server port is used as a web relay port. + schema: + type: list + default: [] + items: + - variable: relayDNSEntry + label: relayDNS Entry + schema: + type: string + required: true + default: "" + - variable: plugins + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: _setupMessaging + label: Setup Messaging + description: This section allow MeshCentral to send messages over user messaging networks like Discord + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: messaging + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: _setupTelegram + label: Setup Telegram + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: telegram + label: telegram + description: Configure Telegram messaging system + schema: + additional_attrs: true + type: dict + attrs: + - variable: apiid + label: apiid + schema: + type: string + default: "" + - variable: apihash + label: apihash + schema: + type: string + default: "" + - variable: session + label: session + schema: + type: string + default: "" + - variable: _setupDiscord + label: Setup Discord + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: discord + label: discord + description: Configure Discord messaging system + schema: + additional_attrs: true + type: dict + attrs: + - variable: serverurl + label: serverurl + schema: + type: string + default: "" + - variable: token + label: token + schema: + type: string + default: "" + - variable: _setupXMPP + label: Setup XMPP + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: xmpp + label: xmpp + description: Configure XMPP messaging system + schema: + additional_attrs: true + type: dict + attrs: + - variable: service + label: service + schema: + type: string + default: "" + - variable: credentials + label: credentials + schema: + additional_attrs: true + type: dict + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + private: true + default: "" + - variable: domains + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: tcdefaultdomain + label: 'Section <"">' + schema: + additional_attrs: true + type: dict + attrs: + - variable: certUrl + label: certUrl + description: HTTPS URL when to get the TLS certificate that MeshAgent's will see when connecting to this server. This setting is used when a reverse proxy like Traefik is used in front of MeshCentral. + schema: + type: string + required: true + default: "" + - variable: title + label: title + description: The title of this web site. All web pages will have this title. + schema: + type: string + required: true + default: MeshCentral + - variable: title2 + label: title2 + description: Secondary title text that is placed on the upper right on the title on many web pages. + schema: + type: string + required: true + default: TrueCharts + - variable: welcomeText + label: welcomeText + description: Text that will be shown on the login screen. + schema: + type: string + required: true + default: Welcome to TrueCharts MeshCentral + - variable: minify + label: minify + description: When enabled, the server will send reduced sized web pages. + schema: + type: boolean + default: true + - variable: localSessionRecording + label: localSessionRecording + description: When false, removes the local recording feature on remote desktop. + schema: + type: boolean + default: true + - variable: mstsc + label: mstsc + description: When enabled, activates the built-in web-based RDP client. + schema: + type: boolean + default: true + - variable: ssh + label: ssh + description: When enabled, activates the built-in web-based SSH client. + schema: + type: boolean + default: true + - variable: novnc + label: novnc + description: When enabled, activates the built-in web-based VNC client. + schema: + type: boolean + default: true + - variable: geoLocation + label: geoLocation + description: Enables the geo-location feature and device location map in the user interface, this feature is not being worked on. + schema: + type: boolean + default: true + - variable: nightMode + label: nightMode + description: 0 = User selects day/night mode, 1 = Always night mode, 2 = Always day mode + schema: + type: int + min: 0 + max: 2 + requited: true + default: 0 + - variable: siteStyle + label: siteStyle + description: Valid numbers are 1 and 2, changes the style of the login page and some secondary pages. + schema: + type: int + min: 1 + max: 2 + requited: true + default: 2 + - variable: deviceMeshRouterLinks + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: rdp + label: rdp + description: Display a RDP link in the device tab when supported + schema: + type: boolean + default: true + - variable: ssh + label: ssh + description: Display a SSH link in the device tab when supported + schema: + type: boolean + default: true + - variable: scp + label: scp + description: Display a SCP link in the device tab when supported + schema: + type: boolean + default: true + - variable: _setupAgentCustomization + label: Setup Agent Customization + description: Use this section to customize the agent branding. + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: agentCustomization + label: Section + schema: + additional_attrs: true + type: dict + attrs: + - variable: displayName + label: displayName + description: The name of the agent as displayed to the user. + schema: + type: string + default: MeshCentral Agent + - variable: description + label: description + description: The description of the agent as displayed to the user. + schema: + type: string + default: Mesh Agent Background Service + - variable: companyName + label: companyName + description: This will be used as the path to install the agent, by default this is 'Mesh Agent' in Windows and 'meshagent' in other OS's. + schema: + type: string + default: Mesh Agent + - variable: serviceName + label: serviceName + description: The name of the background service, by default this is 'Mesh Agent' in Windows and 'meshagent' in other OS's but should be set to an all lower case, no space string. + schema: + type: string + default: Mesh Agent + - variable: installText + label: installText + description: Text string to show in the agent installation dialog box. + schema: + type: string + default: "" + - variable: image + label: image + description: The filename of a image file in .png format located in meshcentral-data to display in the MeshCentral Agent installation dialog, image should be square and from 64x64 to 200x200. + schema: + type: string + default: "" + - variable: fileName + label: fileName + description: The agent filename. + schema: + type: string + default: meshagent + - variable: foregroundColor + label: foregroundColor + description: 'Foreground text color, valid values are RBG in format 0,0,0 to 255,255,255 or format "#000000" to "#FFFFFF".' + schema: + type: string + default: "" + - variable: backgroundColor + label: backgroundColor + description: 'Background color, valid values are RBG in format 0,0,0 to 255,255,255 or format "#000000" to "#FFFFFF".' + schema: + type: string + default: "" + - variable: additional_meshcentral + group: App Configuration + label: Additional MeshCentral Configuration + schema: + type: list + default: [] + items: + - variable: entry + label: Key - Value Pair + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + required: true + default: "" + - variable: value + label: Value + schema: + type: string + required: true + default: "" + - variable: TZ + label: Timezone + group: "General Settings" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + - variable: podOptions + group: "General Settings" + label: "Global Pod Options (Advanced)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: expertPodOpts + label: "Expert - Pod Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + label: "Host Networking" + schema: + type: boolean + default: false + - variable: dnsConfig + label: "DNS Configuration" + schema: + type: dict + additional_attrs: true + attrs: + - variable: options + label: "Options" + schema: + type: list + default: [{"name": "ndots", "value": "1"}] + items: + - variable: optionsEntry + label: "Option Entry" + schema: + type: dict + additional_attrs: true + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + - variable: nameservers + label: "Nameservers" + schema: + type: list + default: [] + items: + - variable: nsEntry + label: "Nameserver Entry" + schema: + type: string + required: true + - variable: searches + label: "Searches" + schema: + type: list + default: [] + items: + - variable: searchEntry + label: "Search Entry" + schema: + type: string + required: true + + - variable: imagePullSecretList + group: "General Settings" + label: "Image Pull Secrets" + schema: + type: list + default: [] + items: + - variable: pullsecretentry + label: "Pull Secret" + schema: + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: true + - variable: data + label: Data + schema: + type: dict + additional_attrs: true + attrs: + - variable: registry + label: "Registry" + schema: + type: string + required: true + default: "https://index.docker.io/v1/" + - variable: username + label: "Username" + schema: + type: string + required: true + default: "" + - variable: password + label: "Password" + schema: + type: string + required: true + private: true + default: "" + - variable: email + label: "Email" + schema: + type: string + required: true + default: "" + - 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - 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: 10205 + required: true + - variable: serviceexpert + group: Networking and Services + label: Show Expert Config + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: scaleExternalInterface + description: Add External Interfaces + label: Add external Interfaces + group: Networking + schema: + type: list + items: + - variable: interfaceConfiguration + description: Interface Configuration + label: Interface Configuration + schema: + additional_attrs: true + 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: + additional_attrs: true + 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 + - variable: staticIPConfigurations + label: Static IP Addresses + schema: + type: list + show_if: [["type", "=", "static"]] + items: + - variable: staticIP + label: Static IP + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: Static Routes + schema: + type: list + show_if: [["type", "=", "static"]] + 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: 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - value: Simple + description: Deprecated CHANGE THIS + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: advancedsvcset + label: Show Advanced Service Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + type: list + default: [] + items: + - variable: externalIP + label: External IP + schema: + type: string + - variable: ipFamilyPolicy + label: IP Family Policy + description: Specify the IP Policy + schema: + type: string + default: SingleStack + enum: + - value: SingleStack + description: SingleStack + - value: PreferDualStack + description: PreferDualStack + - value: RequireDualStack + description: RequireDualStack + - variable: ipFamilies + label: IP Families + description: (Advanced) The IP Families that should be used + schema: + type: list + default: [] + items: + - variable: ipFamily + label: IP Family + 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: persistence + label: Integrated Persistent Storage + description: Integrated Persistent Storage + group: Storage and Persistence + schema: + additional_attrs: true + type: dict + attrs: + - variable: data + label: App Data Storage + description: Stores the Application Data. + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: files + label: Files Storage + description: Stores the Files + 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: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: web + label: Web Storage + description: Stores the Web Files. Used for web customization + 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: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: backups + label: Backups Storage + description: Stores the Backups + 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: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: hostPath + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name (Optional) + description: Defaults to chart name + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description (Optional) + description: Defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: icon + label: Icon (Optional) + description: Defaults to chart icon + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: widget + label: Widget Settings + schema: + type: dict + additional_attrs: true + show_if: [["enabled", "=", true]] + attrs: + - variable: enabled + label: Enable Widget + description: When disabled all widget annotations are skipped. + schema: + type: boolean + default: true + - variable: custom + label: Options + schema: + type: dict + additional_attrs: true + attrs: + - variable: key + label: API-key (key) + schema: + type: string + default: "" + - variable: customkv + label: Custom Options + schema: + type: list + default: [] + items: + - variable: option + label: Option + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + default: "" + required: true + - variable: value + label: Value + schema: + type: string + default: "" + required: true + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: overrideService + 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: [] + show_if: [["certificateIssuer", "=", ""]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your Cert-Manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: scaleCert + label: Use TrueNAS SCALE Certificate (Deprecated) + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: "Allow Cross Origin Requests" + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: namespace + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description + description: defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: securityContext + group: Security and Permissions + label: Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: container + label: Container + schema: + additional_attrs: true + type: dict + attrs: + # Settings from questions.yaml get appended here on a per-app basis + - 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 + # Settings from questions.yaml get appended here on a per-app basis + - 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 + show_if: [["runAsUser", "=", 0]] + 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: "0022" + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: true + - variable: pod + label: Pod + schema: + additional_attrs: true + type: dict + attrs: + - 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 + # Settings from questions.yaml get appended here on a per-app basis + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: resources + group: Resources and Devices + label: "Resource Limits" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: Advanced Limit Resource Consumption + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 4000m + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: RAM + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/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 + hidden: true + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 10m + hidden: true + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 50Mi + hidden: true + 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: device + 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" + - variable: scaleGPU + label: GPU Configuration + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: scaleGPUEntry + label: GPU + schema: + additional_attrs: true + type: dict + attrs: + # Specify GPU configuration + - variable: gpu + label: Select GPU + schema: + additional_attrs: true + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + - variable: workaround + label: "Workaround" + schema: + type: string + default: workaround + hidden: true + - variable: cnpg + group: Postgresql + label: "CloudNative-PG (CNPG)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Postgresql Database" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hibernate + label: Hibernate + description: "enable to safely hibernate and shutdown the postgresql cluster" + schema: + type: boolean + default: false + - variable: mode + label: Mode + description: 'Cluster mode of operation. Available modes: standalone - default mode. Creates new or updates an existing CNPG cluster. recovery - Same as standalone but creates a cluster from a backup, object store or via pg_basebackup replica - Creates a replica cluster from an existing CNPG cluster. # TODO.' + schema: + type: string + default: "standalone" + enum: + - value: standalone + description: standalone + - value: replica + description: replica + - value: recovery + description: recovery + - variable: cluster + label: "Cluster Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: instances + label: Instances + schema: + type: int + default: 1 + - variable: singleNode + label: singleNode + schema: + type: boolean + default: true + hidden: true + - variable: storage + label: "Storage" + schema: + additional_attrs: true + type: dict + attrs: + - variable: size + label: Size + schema: + type: string + default: "256Gi" + - variable: walStorage + label: "WAL Storage" + schema: + additional_attrs: true + type: dict + attrs: + - variable: size + label: Size + schema: + type: string + default: "256Gi" + - variable: monitoring + label: "Monitoring Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enablePodMonitor + label: "enablePodMonitor" + schema: + type: boolean + default: true + - variable: disableDefaultQueries + label: "disableDefaultQueries" + schema: + type: boolean + default: false + - variable: pooler + label: "Pooler Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: instances + label: Instances + schema: + type: int + default: 1 + - variable: createRO + label: "Create ReadOnly Instance" + schema: + type: boolean + default: false + - variable: recovery + label: "Recovery Settings (Experimental)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + - variable: endpointURL + label: "endpointURL" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: method + label: "method" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "object_store" + - variable: backupName + label: "backupName" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: provider + label: "provider" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "s3" + enum: + - value: s3 + description: S3 + - value: azure + description: Azure + - value: google + description: Google + - variable: s3 + label: "s3" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "s3"]] + attrs: + - variable: region + label: "region" + schema: + type: string + default: "" + - variable: bucket + label: "bucket" + schema: + type: string + default: "" + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: accessKey + label: "accessKey" + schema: + type: string + default: "" + - variable: secretKey + label: "secretKey" + schema: + type: string + default: "" + - variable: azure + label: "azure (EXTREMELY EXPERIMENTAL)" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "azure"]] + attrs: + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: connectionString + label: "connectionString" + schema: + type: string + default: "" + - variable: storageAccount + label: "storageAccount" + schema: + type: string + default: "" + - variable: storageKey + label: "storageKey" + schema: + type: string + default: "" + - variable: storageSasToken + label: "storageSasToken" + schema: + type: string + default: "" + - variable: containerName + label: "containerName" + schema: + type: string + default: "" + - variable: serviceName + label: "serviceName" + schema: + type: string + default: "blob" + - variable: inheritFromAzureAD + label: "inheritFromAzureAD" + schema: + type: boolean + default: false + - variable: google + label: "google (EXTREMELY EXPERIMENTAL)" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "google"]] + attrs: + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: bucket + label: "bucket" + schema: + type: string + default: "" + - variable: gkeEnvironment + label: "gkeEnvironment" + schema: + type: string + default: "" + - variable: applicationCredentials + label: "applicationCredentials" + schema: + type: string + default: "" + - variable: backups + label: "Backup Settings (Experimental)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + - variable: endpointURL + label: "endpointURL" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: destinationPath + label: "destinationPath" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: retentionPolicy + label: "retentionPolicy" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "30d" + - variable: provider + label: "provider" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "s3" + enum: + - value: s3 + description: S3 + - value: azure + description: Azure + - value: google + description: Google + - variable: s3 + label: "s3" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "s3"]] + attrs: + - variable: region + label: "region" + schema: + type: string + default: "" + - variable: bucket + label: "bucket" + schema: + type: string + default: "" + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: accessKey + label: "accessKey" + schema: + type: string + default: "" + - variable: secretKey + label: "secretKey" + schema: + type: string + default: "" + - variable: azure + label: "azure (EXTREMELY EXPERIMENTAL)" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "azure"]] + attrs: + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: connectionString + label: "connectionString" + schema: + type: string + default: "" + - variable: storageAccount + label: "storageAccount" + schema: + type: string + default: "" + - variable: storageKey + label: "storageKey" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: storageSasToken + label: "storageSasToken" + schema: + type: string + default: "" + - variable: containerName + label: "containerName" + schema: + type: string + default: "" + - variable: serviceName + label: "serviceName" + schema: + type: string + default: "blob" + - variable: inheritFromAzureAD + label: "inheritFromAzureAD" + schema: + type: boolean + default: false + - variable: google + label: "google (EXTREMELY EXPERIMENTAL)" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "google"]] + attrs: + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: bucket + label: "bucket" + schema: + type: string + default: "" + - variable: gkeEnvironment + label: "gkeEnvironment" + schema: + type: string + default: "" + - variable: applicationCredentials + label: "applicationCredentials" + schema: + type: string + default: "" + - variable: scheduledBackups + label: ScheduledBackups + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: backupschedule + label: BackupSchedule + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "daily-backup" + required: true + - variable: schedule + label: schedule + schema: + type: string + required: true + default: "0 0 0 * * *" + - variable: backupOwnerReference + label: backupOwnerReference + schema: + type: string + required: true + default: "self" + - variable: immediate + label: immediate + schema: + type: boolean + default: false + - variable: suspend + label: suspend + schema: + type: boolean + default: false + - variable: manualBackups + label: manualBackups + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: backup + label: Backup + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true +# - variable: horizontalPodAutoscaler +# group: Advanced +# label: (Advanced) Horizontal Pod Autoscaler +# schema: +# type: list +# default: [] +# items: +# - variable: hpaEntry +# label: HPA Entry +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: name +# label: Name +# schema: +# type: string +# required: true +# default: "" +# - 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: + type: list + default: [] + items: + - variable: netPolicyEntry + label: Network Policy Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - 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: 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: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: NodePort + description: Deprecated CHANGE THIS + - value: ClusterIP + description: ClusterIP + - value: LoadBalancer + description: LoadBalancer + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + default: 36107 + - variable: ingress + label: "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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: 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: gluetun + description: Gluetun + - value: tailscale + description: Tailscale + - value: openvpn + description: OpenVPN (Deprecated) + - value: wireguard + description: Wireguard (Deprecated) + - variable: openvpn + label: OpenVPN Settings + schema: + additional_attrs: true + 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 + show_if: [["username", "!=", ""]] + default: "" + required: true + - variable: tailscale + label: Tailscale Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "tailscale"]] + attrs: + - variable: authkey + label: Authentication Key + description: Provide an auth key to automatically authenticate the node as your user account. + schema: + type: string + private: true + default: "" + - variable: auth_once + label: Auth Once + description: Only attempt to log in if not already logged in. + schema: + type: boolean + default: true + - variable: accept_dns + label: Accept DNS + description: Accept DNS configuration from the admin console. + schema: + type: boolean + default: false + - variable: userspace + label: Userspace + description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. + schema: + type: boolean + default: false + - variable: routes + label: Routes + description: Expose physical subnet routes to your entire Tailscale network. + schema: + type: string + default: "" + - variable: dest_ip + label: Destination IP + description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. + schema: + type: string + default: "" + - variable: sock5_server + label: Sock5 Server + description: The address on which to listen for SOCKS5 proxying into the tailscale net. + schema: + type: string + default: "" + - variable: outbound_http_proxy_listen + label: Outbound HTTP Proxy Listen + description: The address on which to listen for HTTP proxying into the tailscale net. + schema: + type: string + default: "" + - variable: extra_args + label: Extra Args + description: Extra Args + schema: + type: string + default: "" + - variable: daemon_extra_args + label: Tailscale Daemon Extra Args + description: Tailscale Daemon Extra Args + schema: + type: string + default: "" + - 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: string + show_if: [["type", "!=", "disabled"]] + default: "" + + - 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 + max_length: 10240 + - variable: docs + group: Documentation + label: Please read the documentation at https://truecharts.org + description: 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: donateNag + group: Documentation + label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor + description: Please consider supporting TrueCharts, see +
https://truecharts.org/sponsor + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDonate + label: I have considered donating + schema: + type: boolean + default: true + hidden: true diff --git a/stable/meshcentral/14.1.13/templates/_secret.tpl b/stable/meshcentral/14.1.13/templates/_secret.tpl new file mode 100644 index 0000000000..dd6451341b --- /dev/null +++ b/stable/meshcentral/14.1.13/templates/_secret.tpl @@ -0,0 +1,171 @@ +{{/* Define the secret */}} +{{- define "meshcentral.secret" -}} + +{{- $fullname := include "tc.v1.common.lib.chart.names.fullname" $ -}} +{{- $secretName := printf "%s-mesh-secret" $fullname -}} +{{- $secretStoreName := printf "%s-sec-store" $fullname -}} + +{{- $config := .Values.meshcentral -}} +{{- $mc_custom := .Values.additional_meshcentral -}} + +{{- $isScale := false -}} +{{- if hasKey .Values.global "ixChartContext" -}} + {{- $isScale = true -}} +{{- else -}} + {{- $isScale = false -}} +{{- end -}} + +{{- if $isScale -}} + {{- if .Values.additional_meshcentral -}} + {{- $mc_custom = (include "render.custom.scale.values" $mc_custom) -}} + {{- $mc_custom_merged := dict -}} + {{/* We created a new unique section# for each key we parsed */}} + {{/* And we merge them here, as without it we would have multiple */}} + {{/* same top level keys */}} + {{- range $section := (fromYaml $mc_custom) -}} + {{- $mc_custom_merged = mergeOverwrite $mc_custom_merged $section -}} + {{- end -}} + {{- $config = mergeOverwrite $config $mc_custom_merged -}} + {{- end -}} +{{- end -}} + +{{- $sessionKey := "" -}} +{{- with (lookup "v1" "Secret" .Release.Namespace $secretStoreName) -}} + {{- $sessionKey = (index .data "session_key") | b64dec -}} +{{- else -}} + {{- $sessionKey = randAlphaNum 32 -}} +{{- end -}} + +{{/* Inject some values */}} +{{- $_ := set $config "$schema" "http://info.meshcentral.com/downloads/meshcentral-config-schema.json" -}} + +{{- if not (hasKey $config "settings") -}} + {{- $_ := set $config "settings" dict -}} +{{- end -}} + +{{- $_ := set $config.settings "postgres" dict -}} +{{- $_ := set $config.settings.postgres "database" .Values.cnpg.main.database -}} +{{- $_ := set $config.settings.postgres "user" .Values.cnpg.main.user -}} +{{- $_ := set $config.settings.postgres "host" (.Values.cnpg.main.creds.host | trimAll "\"") -}} +{{- $_ := set $config.settings.postgres "port" 5432 -}} +{{- $_ := set $config.settings.postgres "password" (.Values.cnpg.main.creds.password | trimAll "\"") -}} +{{- $_ := set $config.settings "sessionKey" $sessionKey -}} +{{- $_ := set $config.settings "port" .Values.service.main.ports.main.port -}} + +{{/* Force disable some functions that are not appliable in docker */}} +{{- $_ := set $config.settings "selfUpdate" false -}} +{{- $_ := set $config.settings "cleanNpmCacheOnUpdate" false -}} + +{{/* Disallows administrators to update the server from the My Server tab. For ANY domains defined */}} +{{- range $domain := $config.domains -}} + {{- if not (hasKey $domain "myServer") -}} + {{- $_ := set $domain "myServer" dict -}} + {{- end -}} + {{- $_ := set $domain.myServer "Upgrade" false -}} +{{- end -}} + +{{- if $isScale -}} + {{- $config = (include "mergeAndrenameDefaultDomain" $config) -}} + {{- $config = (include "prune.keys.scale" (fromYaml $config)) -}} +{{- else -}} + {{- $config = (include "prune.keys" $config) -}} +{{- end }} + +secret: + sec-store: + enabled: true + data: + {{/* Store session_key to reuse */}} + session_key: {{ $sessionKey }} + mesh-secret: + enabled: true + data: + {{/* The actual config */}} + config.json: | + {{- toPrettyJson (fromYaml $config) | nindent 8 }} +{{- end -}} + +{{/* Prunes keys that start with _ */}} +{{- define "prune.keys" -}} + {{- $values := . -}} + {{- range $k, $v := $values -}} + {{- if (hasPrefix "_" $k) -}} + {{- $_ := unset $values $k -}} + {{- else -}} + {{- if eq (kindOf $v) "map" -}} + {{- $v := (include "prune.keys" $v) -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- toYaml $values -}} +{{- end -}} + +{{/* Only on TrueNAS Scale */}} +{{/* Prunes empty lists */}} +{{/* Prunes int and float equal to -99 */}} +{{/* Prunes empty strings (Does not prune empty strings in lists) */}} +{{/* Prunes keys that start with _ */}} +{{/* There are cases you want to pass strings or bools on the same field */}} +{{/* So if eq string, and eq true/false/null convert to the real values */}} +{{- define "prune.keys.scale" -}} + {{- $values := . -}} + {{- range $k, $v := $values -}} + {{- if eq (kindOf $v) "string" -}} + {{- if not $v -}} + {{- $_ := unset $values $k -}} + {{- else if or (eq $v "true") -}} + {{- $_ := set $values $k true -}} + {{- else if or (eq $v "false") -}} + {{- $_ := set $values $k false -}} + {{- else if or (eq $v "null") -}} + {{- $_ := set $values $k nil -}} {{/* nil == null on helm */}} + {{- end -}} + {{- end -}} + {{- if or (eq (kindOf $v) "float64") (eq (kindOf $v) "int64") -}} + {{- if eq (int $v) -99 -}} + {{- $_ := unset $values $k -}} + {{- end -}} + {{- end -}} + {{- if eq (kindOf $v) "slice" -}} + {{- if not $v -}} + {{- $_ := unset $values $k -}} + {{- end -}} + {{- end -}} + {{- if (hasPrefix "_" $k) -}} + {{- $_ := unset $values $k -}} + {{- else -}} + {{- if eq (kindOf $v) "map" -}} + {{- $v := (include "prune.keys.scale" $v) -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- toYaml $values -}} +{{- end -}} + +{{/* Renames tcdefaultdomain variable to "" as this is the key used by MeshCentral */}} +{{/* but SCALE GUI does not handle it well */}} +{{- define "mergeAndrenameDefaultDomain" -}} + {{- $values := . -}} + {{- $defaultDomain := index $values.domains "" -}} + {{- $computedDomain := mergeOverwrite $defaultDomain $values.domains.tcdefaultdomain -}} + {{- $_ := set $values.domains "" $computedDomain -}} + {{- $_ := unset $values.domains "tcdefaultdomain" -}} + {{- toYaml $values -}} +{{- end -}} + +{{/* Takes a list of dicts with a value and a */}} +{{/* key formatted in dot notaion and converts it to yaml */}} +{{- define "render.custom.scale.values" -}} + {{- $values := . }} + {{- $section := 1 }} + {{- range $item := $values }} + {{- $indent := 2 }} + {{- printf "section%v" $section | nindent 0 }}: + {{- $section = (add 1 (int $section)) }} + {{- range (split "." $item.key) }} + {{- . | nindent (int $indent) }}: + {{- $indent = (add 2 (int $indent)) }} + {{- end }} + {{- printf " %v" $item.value }} + {{- end }} +{{- end -}} diff --git a/stable/meshcentral/14.1.13/templates/common.yaml b/stable/meshcentral/14.1.13/templates/common.yaml new file mode 100644 index 0000000000..c097596c46 --- /dev/null +++ b/stable/meshcentral/14.1.13/templates/common.yaml @@ -0,0 +1,22 @@ +{{/* Make sure all variables are set properly */}} +{{ include "tc.v1.common.loader.init" . }} + +{{- $_ := mustMergeOverwrite .Values (include "meshcentral.secret" $ | fromYaml) -}} + +{{- define "meshcentral.probes" -}} +probes: + liveness: + type: {{ .Values.service.main.ports.main.protocol }} + path: /health.ashx + readiness: + type: {{ .Values.service.main.ports.main.protocol }} + path: /health.ashx + startup: + type: {{ .Values.service.main.ports.main.protocol }} + path: /health.ashx +{{- end -}} + +{{- $_ := mergeOverwrite .Values.workload.main.podSpec.containers.main (include "meshcentral.probes" . | fromYaml) -}} + +{{/* Render the templates */}} +{{ include "tc.v1.common.loader.apply" . }} diff --git a/stable/sourcegraph/4.1.11/values.yaml b/stable/meshcentral/14.1.13/values.yaml similarity index 100% rename from stable/sourcegraph/4.1.11/values.yaml rename to stable/meshcentral/14.1.13/values.yaml diff --git a/stable/nextcloud/28.1.30/CHANGELOG.md b/stable/nextcloud/28.1.30/CHANGELOG.md new file mode 100644 index 0000000000..25a540ff6f --- /dev/null +++ b/stable/nextcloud/28.1.30/CHANGELOG.md @@ -0,0 +1,99 @@ +--- +title: Changelog +--- + +**Important:** +*for the complete changelog, please refer to the website* + + + +## [nextcloud-28.1.30](https://github.com/truecharts/charts/compare/nextcloud-28.1.29...nextcloud-28.1.30) (2024-01-29) + +### Chore + + + +- update container image collabora/code to v23.05.8.2.1[@e294495](https://github.com/e294495) by renovate ([#17663](https://github.com/truecharts/charts/issues/17663)) + + +## [nextcloud-28.1.29](https://github.com/truecharts/charts/compare/nextcloud-28.1.28...nextcloud-28.1.29) (2024-01-27) + +### Chore + + + +- update helm general non-major by renovate ([#17525](https://github.com/truecharts/charts/issues/17525)) + +- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) + + +## [nextcloud-28.1.28](https://github.com/truecharts/charts/compare/nextcloud-28.1.27...nextcloud-28.1.28) (2024-01-26) + +### Chore + + + +- update container image collabora/code to v[@a05c505](https://github.com/a05c505) by renovate ([#17540](https://github.com/truecharts/charts/issues/17540)) + + +## [nextcloud-28.1.27](https://github.com/truecharts/charts/compare/nextcloud-28.1.26...nextcloud-28.1.27) (2024-01-26) + +### Chore + + + +- update container image tccr.io/tccr/nextcloud-push-notify to v0.6.8[@5a4f3be](https://github.com/5a4f3be) by renovate ([#17550](https://github.com/truecharts/charts/issues/17550)) + + +## [nextcloud-28.1.26](https://github.com/truecharts/charts/compare/nextcloud-28.1.25...nextcloud-28.1.26) (2024-01-22) + +### Chore + + + +- update container image collabora/code to v23.05.7.5.1[@a11740e](https://github.com/a11740e) by renovate ([#17506](https://github.com/truecharts/charts/issues/17506)) + + +## [nextcloud-28.1.25](https://github.com/truecharts/charts/compare/nextcloud-28.1.24...nextcloud-28.1.25) (2024-01-22) + +### Chore + + + +- update container image nginxinc/nginx-unprivileged to 1.25.3[@0c0ebe8](https://github.com/0c0ebe8) by renovate ([#17495](https://github.com/truecharts/charts/issues/17495)) + + +## [nextcloud-28.1.24](https://github.com/truecharts/charts/compare/nextcloud-28.1.23...nextcloud-28.1.24) (2024-01-22) + +### Chore + + + +- update container image clamav/clamav to 1.2.1[@f51c38f](https://github.com/f51c38f) by renovate ([#17491](https://github.com/truecharts/charts/issues/17491)) + + +## [nextcloud-28.1.23](https://github.com/truecharts/charts/compare/nextcloud-28.1.22...nextcloud-28.1.23) (2024-01-21) + +### Chore + + + +- update container image common to v17.2.28[@918b4c5](https://github.com/918b4c5) by renovate ([#17478](https://github.com/truecharts/charts/issues/17478)) + +- update container image common to v17.2.26[@24c98f7](https://github.com/24c98f7) by renovate ([#17409](https://github.com/truecharts/charts/issues/17409)) + + +## [nextcloud-28.1.22](https://github.com/truecharts/charts/compare/nextcloud-28.1.21...nextcloud-28.1.22) (2024-01-21) + +### Chore + + + +- update container image tccr.io/tccr/nextcloud-push-notify to v0.6.7[@a6dfa37](https://github.com/a6dfa37) by renovate ([#17462](https://github.com/truecharts/charts/issues/17462)) + + +## [nextcloud-28.1.21](https://github.com/truecharts/charts/compare/nextcloud-28.1.18...nextcloud-28.1.21) (2024-01-21) + +### Chore + + diff --git a/stable/nextcloud/28.1.30/Chart.yaml b/stable/nextcloud/28.1.30/Chart.yaml new file mode 100644 index 0000000000..20e27f93f3 --- /dev/null +++ b/stable/nextcloud/28.1.30/Chart.yaml @@ -0,0 +1,53 @@ +annotations: + max_scale_version: 23.10.2 + min_scale_version: 23.10.0 + truecharts.org/SCALE-support: "true" + truecharts.org/category: cloud + truecharts.org/max_helm_version: "3.14" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: stable +apiVersion: v2 +appVersion: 28.0.1 +dependencies: + - name: common + version: 17.2.29 + repository: oci://tccr.io/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] + - name: redis + version: 11.1.16 + repository: https://deps.truecharts.org + condition: redis.enabled + alias: "" + tags: [] + import-values: [] +deprecated: false +description: A private cloud server that puts the control and security of your own data back into your hands. +home: https://truecharts.org/charts/stable/nextcloud +icon: https://truecharts.org/img/hotlink-ok/chart-icons/nextcloud.png +keywords: + - nextcloud + - storage + - http + - web + - php +kubeVersion: ">=1.24.0-0" +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: nextcloud +sources: + - https://github.com/nextcloud/docker + - https://github.com/nextcloud/helm + - https://github.com/truecharts/charts/tree/master/charts/stable/nextcloud + - https://github.com/truecharts/containers/tree/master/apps/nextcloud-push-notify + - https://hub.docker.com/r/clamav/clamav + - https://github.com/truecharts/containers/tree/master/apps/nextcloud-imaginary + - https://hub.docker.com/r/collabora/code + - https://github.com/truecharts/containers/tree/master/apps/nextcloud-fpm + - https://hub.docker.com/r/nginxinc/nginx-unprivileged +type: application +version: 28.1.30 diff --git a/stable/seafile/4.1.14/LICENSE b/stable/nextcloud/28.1.30/LICENSE similarity index 100% rename from stable/seafile/4.1.14/LICENSE rename to stable/nextcloud/28.1.30/LICENSE diff --git a/stable/nextcloud/28.1.30/README.md b/stable/nextcloud/28.1.30/README.md new file mode 100644 index 0000000000..a5d5bf5ecd --- /dev/null +++ b/stable/nextcloud/28.1.30/README.md @@ -0,0 +1,28 @@ +--- +title: README +--- + +## General Info + +TrueCharts can be installed as both _normal_ Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/stable/nextcloud) + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/charts/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/sponsor) or contributing back to the project any way you can! + +_All Rights Reserved - The TrueCharts Project_ diff --git a/stable/nextcloud/28.1.30/app-changelog.md b/stable/nextcloud/28.1.30/app-changelog.md new file mode 100644 index 0000000000..42d0c1033f --- /dev/null +++ b/stable/nextcloud/28.1.30/app-changelog.md @@ -0,0 +1,9 @@ + + +## [nextcloud-28.1.30](https://github.com/truecharts/charts/compare/nextcloud-28.1.29...nextcloud-28.1.30) (2024-01-29) + +### Chore + + + +- update container image collabora/code to v23.05.8.2.1[@e294495](https://github.com/e294495) by renovate ([#17663](https://github.com/truecharts/charts/issues/17663)) \ No newline at end of file diff --git a/stable/nextcloud/28.1.30/app-readme.md b/stable/nextcloud/28.1.30/app-readme.md new file mode 100644 index 0000000000..1369f69bf5 --- /dev/null +++ b/stable/nextcloud/28.1.30/app-readme.md @@ -0,0 +1,8 @@ +A private cloud server that puts the control and security of your own data back into your hands. + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/nextcloud](https://truecharts.org/charts/stable/nextcloud) + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! diff --git a/stable/nextcloud/28.1.30/charts/common-17.2.29.tgz b/stable/nextcloud/28.1.30/charts/common-17.2.29.tgz new file mode 100644 index 0000000000000000000000000000000000000000..32aa9351f147fbd4659b7948d068b57287f74904 GIT binary patch literal 98038 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 literal 0 HcmV?d00001 diff --git a/stable/paperless-ngx/6.4.6/charts/redis-11.1.16.tgz b/stable/nextcloud/28.1.30/charts/redis-11.1.16.tgz similarity index 100% rename from stable/paperless-ngx/6.4.6/charts/redis-11.1.16.tgz rename to stable/nextcloud/28.1.30/charts/redis-11.1.16.tgz diff --git a/stable/nextcloud/28.1.30/ix_values.yaml b/stable/nextcloud/28.1.30/ix_values.yaml new file mode 100644 index 0000000000..42b8bcced1 --- /dev/null +++ b/stable/nextcloud/28.1.30/ix_values.yaml @@ -0,0 +1,516 @@ +image: + repository: tccr.io/tccr/nextcloud-fpm + pullPolicy: IfNotPresent + tag: v28.0.1@sha256:5197ecccd86acb9f841364c2b393d4bfdb1acd2bd300498066e6e41db37bf36a +nginxImage: + repository: nginxinc/nginx-unprivileged + pullPolicy: IfNotPresent + tag: 1.25.3@sha256:0c0ebe80bcaa383913d02fdc909373f89321977dd269472895c187afcd0777eb +imaginaryImage: + repository: tccr.io/tccr/nextcloud-imaginary + pullPolicy: IfNotPresent + tag: v20230401@sha256:b9137ac211ece1f8bb70dba685236e358ba40b49fff54c8d98991e025d168498 +hpbImage: + repository: tccr.io/tccr/nextcloud-push-notify + pullPolicy: IfNotPresent + tag: v0.6.8@sha256:5a4f3be5dc21839cb86808054d6d5fe7ad3f0d8a746acd915535f4f46a062565 +clamavImage: + repository: clamav/clamav + pullPolicy: IfNotPresent + tag: 1.2.1@sha256:f51c38f31c6b8754191a040c9f9ffc7cb3e44c796b9a2700b3cfd33211651a6f +collaboraImage: + repository: collabora/code + pullPolicy: IfNotPresent + tag: 23.05.8.2.1@sha256:e294495969e832379ecf1dada7c973a726be61c6ea716aa2043d65f162ce2229 +nextcloud: + # Initial Credentials + credentials: + initialAdminUser: admin + initialAdminPassword: adminpass + # General settings + general: + # Custom Nextcloud Scripts + run_optimize: true + default_phone_region: GR + # IP used for exposing nextcloud, + # often the loadbalancer IP + accessIP: "" + # Allows Nextcloud to connect to unsecure (http) endpoints + force_enable_allow_local_remote_servers: false + # File settings + files: + shared_folder_name: Shared + max_chunk_size: 10485760 + # Expiration settings + expirations: + activity_expire_days: 90 + trash_retention_obligation: auto + versions_retention_obligation: auto + # Previews settings + previews: + enabled: true + # It will also deploy the container + imaginary: true + cron: true + schedule: "*/30 * * * *" + max_x: 2048 + max_y: 2048 + max_memory: 1024 + max_file_size_image: 50 + # Setting for Imaginary + max_allowed_resolution: 18.0 + jpeg_quality: 60 + square_sizes: 32 256 + width_sizes: 256 384 + height_sizes: 256 + # Casings are important + # https://github.com/nextcloud/server/blob/master/config/config.sample.php#L1269 + # Only the last part of the provider is needed + providers: + - PNG + - JPEG + # Logging settings + logging: + log_level: 2 + log_file: /var/www/html/data/logs/nextcloud.log + log_audit_file: /var/www/html/data/logs/audit.log + log_date_format: d/m/Y H:i:s + # ClamAV settings + clamav: + # It will also deploy the container + # Note that this runs as root + enabled: false + stream_max_length: 26214400 + file_max_size: -1 + infected_action: only_log + # Notify Push settings + notify_push: + # It will also deploy the container + enabled: true + # Collabora settings + collabora: + # It will also deploy the container + enabled: false + # default|compact|tabbed + interface_mode: default + username: admin + password: changeme + dictionaries: + - de_DE + - en_GB + - en_US + - el_GR + - es_ES + - fr_FR + - pt_BR + - pt_PT + - it + - nl + - ru + onlyoffice: + # It will not deploy the container + # Only add the OnlyOffice settings + enabled: false + url: "" + internal_url: "" + verify_ssl: true + jwt: "" + jwt_header: Authorization + # PHP settings + php: + memory_limit: 1G + upload_limit: 10G + pm_max_children: 180 + pm_start_servers: 18 + pm_min_spare_servers: 12 + pm_max_spare_servers: 30 + opcache: + interned_strings_buffer: 32 + max_accelerated_files: 10000 + memory_consumption: 128 + revalidate_freq: 60 + jit_buffer_size: 128 +# Do NOT edit below this line +workload: + # Nextcloud php-fpm + main: + type: Deployment + podSpec: + containers: + main: + enabled: true + primary: true + envFrom: + - configMapRef: + name: nextcloud-config + probes: + liveness: + enabled: true + type: exec + command: /healthcheck.sh + readiness: + enabled: true + type: exec + command: /healthcheck.sh + startup: + enabled: true + type: tcp + port: "{{ .Values.service.nextcloud.ports.nextcloud.targetPort }}" + nginx: + enabled: true + type: Deployment + strategy: RollingUpdate + replicas: 1 + podSpec: + containers: + nginx: + enabled: true + primary: true + imageSelector: nginxImage + probes: + readiness: + enabled: true + path: /robots.txt + port: "{{ .Values.service.main.ports.main.port }}" + httpHeaders: + Host: kube.internal.healthcheck + liveness: + enabled: true + path: /robots.txt + port: "{{ .Values.service.main.ports.main.port }}" + httpHeaders: + Host: kube.internal.healthcheck + startup: + enabled: true + type: tcp + port: "{{ .Values.service.main.ports.main.port }}" + notify: + enabled: true + type: Deployment + strategy: RollingUpdate + replicas: 1 + podSpec: + containers: + notify: + primary: true + enabled: true + imageSelector: hpbImage + envFrom: + - configMapRef: + name: hpb-config + probes: + readiness: + enabled: true + path: /push/test/cookie + port: 7867 + httpHeaders: + Host: kube.internal.healthcheck + liveness: + enabled: true + path: /push/test/cookie + port: 7867 + httpHeaders: + Host: kube.internal.healthcheck + startup: + enabled: true + type: tcp + port: 7867 + imaginary: + enabled: true + type: Deployment + strategy: RollingUpdate + replicas: 1 + podSpec: + containers: + imaginary: + primary: true + enabled: true + imageSelector: imaginaryImage + command: imaginary + args: + - -p + - "{{ .Values.service.imaginary.ports.imaginary.port }}" + - -concurrency + - "10" + - -max-allowed-resolution + - "{{ .Values.nextcloud.previews.max_allowed_resolution }}" + - -enable-url-source + - -return-size + probes: + readiness: + enabled: true + path: /health + port: "{{ .Values.service.imaginary.ports.imaginary.port }}" + liveness: + enabled: true + path: /health + port: "{{ .Values.service.imaginary.ports.imaginary.port }}" + startup: + enabled: true + type: tcp + port: "{{ .Values.service.imaginary.ports.imaginary.port }}" + clamav: + enabled: true + type: Deployment + strategy: RollingUpdate + replicas: 1 + podSpec: + containers: + clamav: + primary: true + enabled: true + imageSelector: clamavImage + # FIXME: https://github.com/Cisco-Talos/clamav/issues/478 + securityContext: + runAsUser: 0 + runAsGroup: 0 + runAsNonRoot: false + readOnlyRootFilesystem: false + envFrom: + - configMapRef: + name: clamav-config + probes: + readiness: + enabled: true + type: exec + command: clamdcheck.sh + liveness: + enabled: true + type: exec + command: clamdcheck.sh + startup: + enabled: true + type: tcp + port: "{{ .Values.service.clamav.ports.clamav.targetPort }}" + collabora: + enabled: true + type: Deployment + strategy: RollingUpdate + replicas: 1 + podSpec: + containers: + collabora: + primary: true + enabled: true + imageSelector: collaboraImage + securityContext: + runAsUser: 100 + runAsGroup: 102 + readOnlyRootFilesystem: false + allowPrivilegeEscalation: true + capabilities: + add: + - CHOWN + - FOWNER + - SYS_CHROOT + - MKNOD + envFrom: + - configMapRef: + name: collabora-config + probes: + readiness: + enabled: true + type: http + path: /collabora/ + port: "{{ .Values.service.collabora.ports.collabora.targetPort }}" + liveness: + enabled: true + type: http + path: /collabora/ + port: "{{ .Values.service.collabora.ports.collabora.targetPort }}" + startup: + enabled: true + type: tcp + port: "{{ .Values.service.collabora.ports.collabora.targetPort }}" +cronjobs: + # Don't change names, it's used in the persistence + - name: nextcloud-cron + enabled: true + schedule: "*/5 * * * *" + cmd: + - echo "Running [php -f /var/www/html/cron.php] ..." + - php -f /var/www/html/cron.php + - echo "Finished [php -f /var/www/html/cron.php]" + - name: preview-cron + enabled: "{{ .Values.nextcloud.previews.cron }}" + schedule: "{{ .Values.nextcloud.previews.schedule }}" + cmd: + - echo "Running [occ preview:pre-generate] ..." + - occ preview:pre-generate + - echo "Finished [occ preview:pre-generate]" +service: + # Main service links to ingress easier + # That's why the nginx is swapped with nextcloud + main: + targetSelector: nginx + ports: + main: + targetSelector: nginx + port: 8080 + nextcloud: + enabled: true + targetSelector: main + ports: + nextcloud: + enabled: true + targetSelector: main + port: 9000 + targetPort: 9000 + notify: + enabled: true + targetSelector: notify + ports: + notify: + enabled: true + primary: true + port: 7867 + targetPort: 7867 + targetSelector: notify + metrics: + enabled: true + port: 7868 + targetSelector: notify + imaginary: + enabled: true + targetSelector: imaginary + ports: + imaginary: + enabled: true + port: 9090 + targetSelector: imaginary + clamav: + enabled: true + targetSelector: clamav + ports: + clamav: + enabled: true + port: 3310 + targetPort: 3310 + targetSelector: clamav + collabora: + enabled: true + targetSelector: collabora + ports: + collabora: + enabled: true + port: 9980 + targetPort: 9980 + targetSelector: collabora +persistence: + php-tune: + enabled: true + type: configmap + objectName: php-tune + targetSelector: + main: + main: + mountPath: /usr/local/etc/php-fpm.d/zz-tune.conf + subPath: zz-tune.conf + readOnly: true + redis-session: + enabled: true + type: configmap + objectName: redis-session + targetSelector: + main: + main: + mountPath: /usr/local/etc/php/conf.d/redis-session.ini + subPath: redis-session.ini + readOnly: true + opcache-recommended: + enabled: true + type: configmap + objectName: opcache + targetSelector: + main: + main: + mountPath: /usr/local/etc/php/conf.d/opcache-recommended.ini + subPath: opcache-recommended.ini + readOnly: true + nginx: + enabled: true + type: configmap + objectName: nginx-config + targetSelector: + nginx: + nginx: + mountPath: /etc/nginx/nginx.conf + subPath: nginx.conf + readOnly: true + nginx-temp: + enabled: true + type: emptyDir + targetSelector: + nginx: + nginx: + mountPath: /tmp/nginx + html: + enabled: true + targetSelector: + main: + main: + mountPath: /var/www/html + nextcloud-cron: + nextcloud-cron: + mountPath: /var/www/html + preview-cron: + preview-cron: + mountPath: /var/www/html + nginx: + nginx: + mountPath: /var/www/html + readOnly: true + config: + enabled: true + targetSelector: + main: + main: + mountPath: /var/www/html/config + nextcloud-cron: + nextcloud-cron: + mountPath: /var/www/html/config + preview-cron: + preview-cron: + mountPath: /var/www/html/config + notify: + notify: + mountPath: /var/www/html/config + readOnly: true + nginx: + nginx: + mountPath: /var/www/html/config + readOnly: true + data: + enabled: true + targetSelector: + main: + main: + mountPath: /var/www/html/data + init-perms: + mountPath: /var/www/html/data + nextcloud-cron: + nextcloud-cron: + mountPath: /var/www/html/data + preview-cron: + preview-cron: + mountPath: /var/www/html/data + nginx: + nginx: + mountPath: /var/www/html/data + readOnly: true +cnpg: + main: + enabled: true + user: nextcloud + database: nextcloud +redis: + enabled: true + username: default +portal: + open: + enabled: true +updated: true + +ingress: + main: + required: true diff --git a/stable/nextcloud/28.1.30/questions.yaml b/stable/nextcloud/28.1.30/questions.yaml new file mode 100644 index 0000000000..5b4e01ba52 --- /dev/null +++ b/stable/nextcloud/28.1.30/questions.yaml @@ -0,0 +1,4169 @@ +groups: + - name: Container Image + description: Image to be used for container + - name: General Settings + description: General Deployment Settings + - name: Workload Settings + description: Workload Settings + - 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: Postgresql + description: Postgresql + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_tcportal-open_protocol" + host: + - "$kubernetes-resource_configmap_tcportal-open_host" + ports: + - "$kubernetes-resource_configmap_tcportal-open_port" +questions: + - variable: global + group: General Settings + label: "Global Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: stopAll + label: Stop All + description: "Stops All Running pods and hibernates cnpg" + schema: + type: boolean + default: false + - variable: workload + group: "Workload Settings" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type (Advanced) + schema: + type: string + default: Deployment + enum: + - value: Deployment + description: Deployment + - value: DaemonSet + description: DaemonSet + - variable: replicas + label: Replicas (Advanced) + description: Set the number of Replicas + schema: + type: int + show_if: [["type", "!=", "DaemonSet"]] + default: 1 + - variable: podSpec + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: containers + label: Containers + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: Main Container + schema: + additional_attrs: true + type: dict + attrs: + - variable: envList + label: Extra Environment Variables + description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." + 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: extraArgs + label: Extra Args + schema: + type: list + default: [] + items: + - variable: arg + label: Arg + schema: + type: string + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: command + label: Command + schema: + type: list + default: [] + items: + - variable: param + label: Param + schema: + type: string + - variable: TZ + label: Timezone + group: "General Settings" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + - variable: nextcloud + group: App Configuration + label: Nextcloud + schema: + additional_attrs: true + type: dict + attrs: + - variable: credentials + label: Initial Credentials + schema: + additional_attrs: true + type: dict + attrs: + - variable: initialAdminUser + label: Initial Admin User + description: Sets the initial admin username + schema: + type: string + required: true + default: "" + - variable: initialAdminPassword + label: Initial Admin Password + description: Sets the initial admin password + schema: + type: string + required: true + private: true + default: "" + - variable: general + label: General + schema: + additional_attrs: true + type: dict + attrs: + - variable: run_optimize + label: Run Optimize Scripts + description: | + Runs the following commands at startup:
+ occ db:add-missing-indices
+ occ db:add-missing-columns
+ occ db:add-missing-primary-keys
+ yes | occ db:convert-filecache-bigint
+ occ maintenance:mimetype:update-js
+ occ maintenance:mimetype:update-db
+ occ maintenance:update:htaccess
+ schema: + type: boolean + default: false + - variable: default_phone_region + label: Default Phone Region + description: | + Sets the default phone region in ISO_3166-1 format (e.g. US).
+ https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements + schema: + type: string + valid_chars: '^[A-Z]{2}$' + required: true + default: "" + - variable: accessIP + label: Access IP + description: Set to the IP-Address used to reach Nextcloud. + schema: + type: string + required: true + $ref: + - "definitions/nodeIP" + - variable: force_enable_allow_local_remote_servers + label: Force Enable Allow Local Remote Servers + description: + Enables 'allow_local_remote_servers' option + schema: + type: boolean + default: false + - variable: files + label: Files Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: shared_folder_name + label: Shared Folder Name + schema: + type: string + required: true + default: Shared + - variable: max_chunk_size + label: Max Chunk Size + schema: + type: int + required: true + default: 10485760 + - variable: expirations + label: Expirations Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: activity_expire_days + label: Activity Expire Days + schema: + type: int + required: true + default: 90 + - variable: trash_retention_obligation + label: Trash Retention Obligation + schema: + type: string + required: true + default: auto + - variable: versions_retention_obligation + label: Versions Retention Obligation + schema: + type: string + required: true + default: auto + - variable: previews + label: Previews Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Previews + schema: + type: boolean + default: true + show_subquestions_if: true + subquestions: + - variable: imaginary + label: Enable imaginary + description: | + Enable imaginary to generate previews in the background.
+ It will also deploy the needed container. + schema: + type: boolean + default: true + - variable: cron + label: Enable cron + description: | + Enable cron to generate previews in the background. + schema: + type: boolean + default: true + - variable: schedule + label: Cron Schedule + schema: + type: string + default: "*/30 * * * *" + - variable: max_x + label: Max X + schema: + type: int + required: true + default: 2048 + - variable: max_y + label: Max Y + schema: + type: int + required: true + default: 2048 + - variable: max_memory + label: Max Memory + schema: + type: int + required: true + default: 1024 + - variable: max_allowed_resolution + label: Max Allowed Resolution + schema: + type: string + valid_chars: '^[0-9]{1,5}(\.[0-9]{1,2})?$' + show_if: [["imaginary", "=", true]] + required: true + default: "18.0" + - variable: max_file_size_image + label: Max File Size Image + schema: + type: int + required: true + default: 50 + - variable: jpeg_quality + label: JPEG Quality + schema: + type: int + required: true + default: 60 + - variable: square_sizes + label: Square Sizes + schema: + type: string + required: true + default: "32 256" + - variable: width_sizes + label: Width Sizes + schema: + type: string + required: true + default: "256 384" + - variable: height_sizes + label: Height Sizes + schema: + type: string + required: true + default: "256" + - variable: providers + label: Providers + schema: + type: list + empty: false + required: true + default: + - BMP + - GIF + - JPEG + - Krita + - MarkDown + - MP3 + - OpenDocument + - PNG + - TXT + - XBitmap + items: + - variable: provider_entry + label: Provider Entry + schema: + type: string + required: true + default: "" + enum: + - value: BMP + description: BMP + - value: Font + description: Font + - value: GIF + description: GIF + - value: HEIC + description: HEIC + - value: Illustrator + description: Illustrator + - value: JPEG + description: JPEG + - value: Krita + description: Krita + - value: MarkDown + description: MarkDown + - value: Movie + description: Movie + - value: MP3 + description: MP3 + - value: MSOffice2003 + description: MSOffice2003 + - value: MSOffice2007 + description: MSOffice2007 + - value: MSOfficeDoc + description: MSOfficeDoc + - value: OpenDocument + description: OpenDocument + - value: PDF + description: PDF + - value: Photoshop + description: Photoshop + - value: PNG + description: PNG + - value: Postscript + description: Postscript + - value: StarOffice + description: StarOffice + - value: SVG + description: SVG + - value: TIFF + description: TIFF + - value: TXT + description: TXT + - value: XBitmap + description: XBitmap + - variable: logging + label: Logging Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: log_level + label: Log Level + schema: + type: int + required: true + default: 2 + enum: + - value: 0 + description: Debug + - value: 1 + description: Info + - value: 2 + description: Warning + - value: 3 + description: Error + - value: 4 + description: Fatal + - variable: log_date_format + label: Log Date Format + schema: + type: string + required: true + default: d/m/Y H:i:s + - variable: notify_push + label: Notify Push Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Notify Push + description: | + Enable and Configure Notify Push.
+ It will also deploy the needed container + schema: + type: boolean + default: true + - variable: clamav + label: ClamAV Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable ClamAV + description: | + Enable and configure ClamAV.
+ It will also deploy the needed container.
+ Keep in mind that this will run as root.
+ https://github.com/Cisco-Talos/clamav/issues/478 + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: stream_max_length + label: Stream Max Length + schema: + type: int + required: true + default: 104857600 + - variable: file_max_size + label: File Max Size + schema: + type: int + required: true + default: -1 + - variable: infected_action + label: Infected Action + schema: + type: string + required: true + default: only_log + enum: + - value: delete + description: Delete + - value: only_log + description: Only Log + - variable: collabora + label: Collabora Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Collabora + description: | + Enable and configure Collabora.
+ It will also deploy the needed container.
+ Keep in mind that this will run as root. + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: interface_mode + label: Interface Mode + schema: + type: string + required: true + default: default + enum: + - value: default + description: Default + - value: compact + description: Compact + - value: tabbed + description: Tabbed + - variable: username + label: Username + schema: + type: string + default: admin + required: true + - variable: password + label: Password + schema: + type: string + default: "" + required: true + - variable: dictionaries + label: Dictionaries + schema: + type: list + empty: false + required: true + default: + - de_DE + - en_GB + - en_US + - el_GR + - es_ES + - fr_FR + - pt_BR + - pt_PT + - it + - nl + - ru + items: + - variable: dictionary + label: Dictionary + schema: + type: string + required: true + default: "" + - variable: onlyoffice + label: Only Office Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable OnlyOffice + description: | + Enable and configure OnlyOffice.
+ This will NOT deploy the needed container.
+ You need to deploy it yourself. + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: url + label: Public URL + description: | + The public FQDN and port of the OnlyOffice Document Server + schema: + type: string + required: true + default: "" + - variable: internal_url + label: Internal URL + description: | + The internal FQDN and port of the OnlyOffice Document Server + schema: + type: string + required: true + default: "" + - variable: verify_ssl + label: Verify SSL (Advanced) + description: | + Verify SSL when connecting to OnlyOffice Document Server + schema: + type: boolean + default: true + - variable: jwt + label: JWT + schema: + type: string + required: true + default: "" + - variable: jwt_header + label: JWT Header + schema: + type: string + required: true + default: Authorization + - variable: php + label: PHP Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: memory_limit + label: Memory Limit + schema: + type: string + required: true + default: 1G + - variable: upload_limit + label: Upload Limit + schema: + type: string + required: true + default: 10G + - variable: pm_max_children + label: Max Children + schema: + type: int + required: true + default: 180 + - variable: pm_start_servers + label: Start Servers + schema: + type: int + required: true + default: 18 + - variable: pm_min_spare_servers + label: Minimum Spare Servers + schema: + type: int + required: true + default: 12 + - variable: pm_max_spare_servers + label: Maximum Spare Servers + schema: + type: int + required: true + default: 30 + - variable: opcache + label: OPCache Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: interned_strings_buffer + label: Interned Strings Buffer + description: The amount of memory used to store interned strings, in megabytes. + schema: + type: int + required: true + default: 32 + - variable: max_accelerated_files + label: Max Accelerated Files + description: The maximum number of keys (and therefore scripts) in the OPcache hash table. + schema: + type: int + required: true + default: 10000 + - variable: memory_consumption + label: Memory Consumption + description: The size of the shared memory storage used by OPcache, in megabytes. + schema: + type: int + required: true + default: 128 + - variable: revalidate_freq + label: Revalidate Frequency + description: How often to check script timestamps for updates, in seconds. 0 will result in OPcache checking for updates on every request. + schema: + type: int + required: true + default: 60 + - variable: jit_buffer_size + label: JIT Buffer Size + description: The amount of shared memory (in megabytes) to reserve for compiled JIT code. A zero value disables the JIT. + schema: + type: int + required: true + default: 128 + - 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - value: Simple + description: Deprecated CHANGE THIS + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: advancedsvcset + label: Show Advanced Service Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + type: list + default: [] + items: + - variable: externalIP + label: External IP + schema: + type: string + - variable: ipFamilyPolicy + label: IP Family Policy + description: Specify the IP Policy + schema: + type: string + default: SingleStack + enum: + - value: SingleStack + description: SingleStack + - value: PreferDualStack + description: PreferDualStack + - value: RequireDualStack + description: RequireDualStack + - variable: ipFamilies + label: IP Families + description: (Advanced) The IP Families that should be used + schema: + type: list + default: [] + items: + - variable: ipFamily + label: IP Family + 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: persistence + label: Integrated Persistent Storage + description: Integrated Persistent Storage + group: Storage and Persistence + schema: + additional_attrs: true + type: dict + attrs: + - variable: html + label: App HTML Storage + description: Stores the Application HTML. + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: config + label: App Config Storage + description: Stores the Application Config. + 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: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: data + label: User Data Storage + description: Stores the User Data. + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: hostPath + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name (Optional) + description: Defaults to chart name + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description (Optional) + description: Defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: icon + label: Icon (Optional) + description: Defaults to chart icon + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: widget + label: Widget Settings + schema: + type: dict + additional_attrs: true + show_if: [["enabled", "=", true]] + attrs: + - variable: enabled + label: Enable Widget + description: When disabled all widget annotations are skipped. + schema: + type: boolean + default: true + - variable: custom + label: Options + schema: + type: dict + additional_attrs: true + attrs: + - variable: key + label: API-key (key) + schema: + type: string + default: "" + - variable: customkv + label: Custom Options + schema: + type: list + default: [] + items: + - variable: option + label: Option + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + default: "" + required: true + - variable: value + label: Value + schema: + type: string + default: "" + required: true + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: overrideService + 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: [] + show_if: [["certificateIssuer", "=", ""]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your Cert-Manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: scaleCert + label: Use TrueNAS SCALE Certificate (Deprecated) + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: "Allow Cross Origin Requests" + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: namespace + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description + description: defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: securityContext + group: Security and Permissions + label: Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: container + label: Container + schema: + additional_attrs: true + type: dict + attrs: + # Settings from questions.yaml get appended here on a per-app basis + - 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 of the user running the application + schema: + type: int + default: 568 + # Settings from questions.yaml get appended here on a per-app basis + - 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 + show_if: [["runAsUser", "=", 0]] + 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: "0022" + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: true + - variable: pod + label: Pod + schema: + additional_attrs: true + type: dict + attrs: + - 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 + # Settings from questions.yaml get appended here on a per-app basis + - variable: fsGroup + label: fsGroup + description: The group that should own ALL storage. + schema: + type: int + default: 568 + - variable: resources + group: Resources and Devices + label: "Resource Limits" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: Advanced Limit Resource Consumption + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 4000m + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: RAM + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/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 + hidden: true + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 10m + hidden: true + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 50Mi + hidden: true + 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: device + 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" + - variable: scaleGPU + label: GPU Configuration + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: scaleGPUEntry + label: GPU + schema: + additional_attrs: true + type: dict + attrs: + # Specify GPU configuration + - variable: gpu + label: Select GPU + schema: + additional_attrs: true + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + - variable: workaround + label: "Workaround" + schema: + type: string + default: workaround + hidden: true + - variable: cnpg + group: Postgresql + label: "CloudNative-PG (CNPG)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Postgresql Database" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hibernate + label: Hibernate + description: "enable to safely hibernate and shutdown the postgresql cluster" + schema: + type: boolean + default: false + - variable: mode + label: Mode + description: 'Cluster mode of operation. Available modes: standalone - default mode. Creates new or updates an existing CNPG cluster. recovery - Same as standalone but creates a cluster from a backup, object store or via pg_basebackup replica - Creates a replica cluster from an existing CNPG cluster. # TODO.' + schema: + type: string + default: "standalone" + enum: + - value: standalone + description: standalone + - value: replica + description: replica + - value: recovery + description: recovery + - variable: cluster + label: "Cluster Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: instances + label: Instances + schema: + type: int + default: 1 + - variable: singleNode + label: singleNode + schema: + type: boolean + default: true + hidden: true + - variable: storage + label: "Storage" + schema: + additional_attrs: true + type: dict + attrs: + - variable: size + label: Size + schema: + type: string + default: "256Gi" + - variable: walStorage + label: "WAL Storage" + schema: + additional_attrs: true + type: dict + attrs: + - variable: size + label: Size + schema: + type: string + default: "256Gi" + - variable: monitoring + label: "Monitoring Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enablePodMonitor + label: "enablePodMonitor" + schema: + type: boolean + default: true + - variable: disableDefaultQueries + label: "disableDefaultQueries" + schema: + type: boolean + default: false + - variable: pooler + label: "Pooler Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: instances + label: Instances + schema: + type: int + default: 1 + - variable: createRO + label: "Create ReadOnly Instance" + schema: + type: boolean + default: false + - variable: recovery + label: "Recovery Settings (Experimental)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + - variable: endpointURL + label: "endpointURL" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: method + label: "method" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "object_store" + - variable: backupName + label: "backupName" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: provider + label: "provider" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "s3" + enum: + - value: s3 + description: S3 + - value: azure + description: Azure + - value: google + description: Google + - variable: s3 + label: "s3" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "s3"]] + attrs: + - variable: region + label: "region" + schema: + type: string + default: "" + - variable: bucket + label: "bucket" + schema: + type: string + default: "" + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: accessKey + label: "accessKey" + schema: + type: string + default: "" + - variable: secretKey + label: "secretKey" + schema: + type: string + default: "" + - variable: azure + label: "azure (EXTREMELY EXPERIMENTAL)" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "azure"]] + attrs: + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: connectionString + label: "connectionString" + schema: + type: string + default: "" + - variable: storageAccount + label: "storageAccount" + schema: + type: string + default: "" + - variable: storageKey + label: "storageKey" + schema: + type: string + default: "" + - variable: storageSasToken + label: "storageSasToken" + schema: + type: string + default: "" + - variable: containerName + label: "containerName" + schema: + type: string + default: "" + - variable: serviceName + label: "serviceName" + schema: + type: string + default: "blob" + - variable: inheritFromAzureAD + label: "inheritFromAzureAD" + schema: + type: boolean + default: false + - variable: google + label: "google (EXTREMELY EXPERIMENTAL)" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "google"]] + attrs: + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: bucket + label: "bucket" + schema: + type: string + default: "" + - variable: gkeEnvironment + label: "gkeEnvironment" + schema: + type: string + default: "" + - variable: applicationCredentials + label: "applicationCredentials" + schema: + type: string + default: "" + - variable: backups + label: "Backup Settings (Experimental)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + - variable: endpointURL + label: "endpointURL" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: destinationPath + label: "destinationPath" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: retentionPolicy + label: "retentionPolicy" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "30d" + - variable: provider + label: "provider" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "s3" + enum: + - value: s3 + description: S3 + - value: azure + description: Azure + - value: google + description: Google + - variable: s3 + label: "s3" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "s3"]] + attrs: + - variable: region + label: "region" + schema: + type: string + default: "" + - variable: bucket + label: "bucket" + schema: + type: string + default: "" + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: accessKey + label: "accessKey" + schema: + type: string + default: "" + - variable: secretKey + label: "secretKey" + schema: + type: string + default: "" + - variable: azure + label: "azure (EXTREMELY EXPERIMENTAL)" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "azure"]] + attrs: + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: connectionString + label: "connectionString" + schema: + type: string + default: "" + - variable: storageAccount + label: "storageAccount" + schema: + type: string + default: "" + - variable: storageKey + label: "storageKey" + schema: + type: string + show_if: [["enabled", "=", true]] + default: "" + - variable: storageSasToken + label: "storageSasToken" + schema: + type: string + default: "" + - variable: containerName + label: "containerName" + schema: + type: string + default: "" + - variable: serviceName + label: "serviceName" + schema: + type: string + default: "blob" + - variable: inheritFromAzureAD + label: "inheritFromAzureAD" + schema: + type: boolean + default: false + - variable: google + label: "google (EXTREMELY EXPERIMENTAL)" + schema: + additional_attrs: true + type: dict + show_if: [["provider", "=", "google"]] + attrs: + - variable: path + label: "path" + schema: + type: string + default: "/" + - variable: bucket + label: "bucket" + schema: + type: string + default: "" + - variable: gkeEnvironment + label: "gkeEnvironment" + schema: + type: string + default: "" + - variable: applicationCredentials + label: "applicationCredentials" + schema: + type: string + default: "" + - variable: scheduledBackups + label: ScheduledBackups + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: backupschedule + label: BackupSchedule + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "daily-backup" + required: true + - variable: schedule + label: schedule + schema: + type: string + required: true + default: "0 0 0 * * *" + - variable: backupOwnerReference + label: backupOwnerReference + schema: + type: string + required: true + default: "self" + - variable: immediate + label: immediate + schema: + type: boolean + default: false + - variable: suspend + label: suspend + schema: + type: boolean + default: false + - variable: manualBackups + label: manualBackups + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: backup + label: Backup + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: metrics + group: Metrics + label: Prometheus Metrics + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: Main Metrics + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + description: Enable Prometheus Metrics + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: prometheusRule + label: PrometheusRule + description: Enable and configure Prometheus Rules for the App. + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + description: Enable Prometheus Metrics + schema: + type: boolean + default: false + # TODO: Rule List section +# - variable: horizontalPodAutoscaler +# group: Advanced +# label: (Advanced) Horizontal Pod Autoscaler +# schema: +# type: list +# default: [] +# items: +# - variable: hpaEntry +# label: HPA Entry +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: name +# label: Name +# schema: +# type: string +# required: true +# default: "" +# - 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: + type: list + default: [] + items: + - variable: netPolicyEntry + label: Network Policy Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - 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: 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: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: NodePort + description: Deprecated CHANGE THIS + - value: ClusterIP + description: ClusterIP + - value: LoadBalancer + description: LoadBalancer + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + default: 36107 + - variable: ingress + label: "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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: 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: gluetun + description: Gluetun + - value: tailscale + description: Tailscale + - value: openvpn + description: OpenVPN (Deprecated) + - value: wireguard + description: Wireguard (Deprecated) + - variable: openvpn + label: OpenVPN Settings + schema: + additional_attrs: true + 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 + show_if: [["username", "!=", ""]] + default: "" + required: true + - variable: tailscale + label: Tailscale Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "tailscale"]] + attrs: + - variable: authkey + label: Authentication Key + description: Provide an auth key to automatically authenticate the node as your user account. + schema: + type: string + private: true + default: "" + - variable: auth_once + label: Auth Once + description: Only attempt to log in if not already logged in. + schema: + type: boolean + default: true + - variable: accept_dns + label: Accept DNS + description: Accept DNS configuration from the admin console. + schema: + type: boolean + default: false + - variable: userspace + label: Userspace + description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. + schema: + type: boolean + default: false + - variable: routes + label: Routes + description: Expose physical subnet routes to your entire Tailscale network. + schema: + type: string + default: "" + - variable: dest_ip + label: Destination IP + description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. + schema: + type: string + default: "" + - variable: sock5_server + label: Sock5 Server + description: The address on which to listen for SOCKS5 proxying into the tailscale net. + schema: + type: string + default: "" + - variable: outbound_http_proxy_listen + label: Outbound HTTP Proxy Listen + description: The address on which to listen for HTTP proxying into the tailscale net. + schema: + type: string + default: "" + - variable: extra_args + label: Extra Args + description: Extra Args + schema: + type: string + default: "" + - variable: daemon_extra_args + label: Tailscale Daemon Extra Args + description: Tailscale Daemon Extra Args + schema: + type: string + default: "" + - 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: string + show_if: [["type", "!=", "disabled"]] + default: "" + + - 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 + max_length: 10240 + - variable: docs + group: Documentation + label: Please read the documentation at https://truecharts.org + description: 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: donateNag + group: Documentation + label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor + description: Please consider supporting TrueCharts, see +
https://truecharts.org/sponsor + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDonate + label: I have considered donating + schema: + type: boolean + default: true + hidden: true diff --git a/stable/splunk/6.1.10/templates/NOTES.txt b/stable/nextcloud/28.1.30/templates/NOTES.txt similarity index 100% rename from stable/splunk/6.1.10/templates/NOTES.txt rename to stable/nextcloud/28.1.30/templates/NOTES.txt diff --git a/stable/nextcloud/28.1.30/templates/_configmap.tpl b/stable/nextcloud/28.1.30/templates/_configmap.tpl new file mode 100644 index 0000000000..081cf5d71c --- /dev/null +++ b/stable/nextcloud/28.1.30/templates/_configmap.tpl @@ -0,0 +1,443 @@ +{{- define "nextcloud.accessurl" -}} + {{- $accessUrl := .Values.chartContext.appUrl -}} + {{- if or (contains "127.0.0.1" $accessUrl) (contains "localhost" $accessUrl) -}} + {{- if .Values.nextcloud.general.accessIP -}} + {{- $prot := "http" -}} + {{- $host := .Values.nextcloud.general.accessIP -}} + {{- $port := .Values.service.main.ports.main.port -}} + {{/* + Allowing here to override protocol and port + should be enough to make it work with any rev proxy + */}} + {{- $accessUrl = printf "%v://%v:%v" $prot $host $port -}} + {{- end -}} + {{- end -}} + + {{- $accessUrl -}} +{{- end -}} + +{{- define "nextcloud.accesshost" -}} + {{- $accessUrl := (include "nextcloud.accessurl" $) -}} + {{- $accessHost := regexReplaceAll ".*://(.*)" $accessUrl "${1}" -}} + {{- $accessHost = regexReplaceAll "(.*):.*" $accessHost "${1}" -}} + + {{- $accessHost -}} +{{- end -}} + +{{/* Define the configmap */}} +{{- define "nextcloud.configmaps" -}} +{{- $fullname := (include "tc.v1.common.lib.chart.names.fullname" $) -}} +{{- $fqdn := (include "tc.v1.common.lib.chart.names.fqdn" $) -}} +{{- $accessUrl := (include "nextcloud.accessurl" $) -}} +{{- $accessHost := (include "nextcloud.accesshost" $) -}} +{{- $accessHostPort := regexReplaceAll ".*://(.*)" $accessUrl "${1}" -}} +{{- $accessProtocol := regexReplaceAll "(.*)://.*" $accessUrl "${1}" -}} +{{- $redisHost := .Values.redis.creds.plainhost | trimAll "\"" -}} +{{- $redisPass := .Values.redis.creds.redisPassword | trimAll "\"" -}} +{{- $healthHost := "kube.internal.healthcheck" -}} + +php-tune: + enabled: true + data: + zz-tune.conf: | + [www] + pm.max_children = {{ .Values.nextcloud.php.pm_max_children }} + pm.start_servers = {{ .Values.nextcloud.php.pm_start_servers }} + pm.min_spare_servers = {{ .Values.nextcloud.php.pm_min_spare_servers }} + pm.max_spare_servers = {{ .Values.nextcloud.php.pm_max_spare_servers }} + +opcache: + enabled: true + data: + opcache-recommended.ini: | + opcache.enable=1 + opcache.save_comments=1 + opcache.jit=1255 + opcache.interned_strings_buffer={{ .Values.nextcloud.opcache.interned_strings_buffer }} + opcache.max_accelerated_files={{ .Values.nextcloud.opcache.max_accelerated_files }} + opcache.memory_consumption={{ .Values.nextcloud.opcache.memory_consumption }} + opcache.revalidate_freq={{ .Values.nextcloud.opcache.revalidate_freq }} + opcache.jit_buffer_size={{ printf "%vM" .Values.nextcloud.opcache.jit_buffer_size }} + +redis-session: + enabled: true + data: + redis-session.ini: | + session.save_handler = redis + session.save_path = {{ printf "tcp://%v:6379?auth=%v" $redisHost $redisPass | quote }} + redis.session.locking_enabled = 1 + redis.session.lock_retries = -1 + redis.session.lock_wait_time = 10000 + +hpb-config: + enabled: {{ .Values.nextcloud.notify_push.enabled }} + data: + NEXTCLOUD_URL: {{ printf "http://%v:%v" $fullname .Values.service.main.ports.main.port }} + HPB_HOST: {{ $healthHost }} + CONFIG_FILE: {{ printf "%v/config.php" .Values.persistence.config.targetSelector.notify.notify.mountPath }} + METRICS_PORT: {{ .Values.service.notify.ports.metrics.port | quote }} + +clamav-config: + enabled: {{ .Values.nextcloud.clamav.enabled }} + data: + CLAMAV_NO_CLAMD: "false" + CLAMAV_NO_FRESHCLAMD: "true" + CLAMAV_NO_MILTERD: "true" + CLAMD_STARTUP_TIMEOUT: "1800" + +collabora-config: + enabled: {{ .Values.nextcloud.collabora.enabled }} + data: + aliasgroup1: {{ $accessUrl }} + server_name: {{ $accessHostPort }} + dictionaries: {{ join " " .Values.nextcloud.collabora.dictionaries }} + username: {{ .Values.nextcloud.collabora.username | quote }} + password: {{ .Values.nextcloud.collabora.password | quote }} + DONT_GEN_SSL_CERT: "true" + # mount_jail_tree is only used for local storage + # not needed for WOPI https://github.com/CollaboraOnline/online/issues/3604#issuecomment-989833814 + extra_params: | + --o:ssl.enable=false + --o:ssl.termination=true + --o:net.service_root=/collabora + --o:home_mode.enable=true + --o:welcome.enable=false + --o:logging.level=warning + --o:logging.level_startup=warning + --o:security.seccomp=true + --o:mount_jail_tree=false + --o:user_interface.mode={{ .Values.nextcloud.collabora.interface_mode }} + +nextcloud-config: + enabled: true + data: + {{/* Database */}} + POSTGRES_DB: {{ .Values.cnpg.main.database | quote }} + POSTGRES_USER: {{ .Values.cnpg.main.user | quote }} + POSTGRES_PASSWORD: {{ .Values.cnpg.main.creds.password | trimAll "\"" }} + POSTGRES_HOST: {{ .Values.cnpg.main.creds.host | trimAll "\"" }} + + {{/* Redis */}} + NX_REDIS_HOST: {{ $redisHost }} + NX_REDIS_PASS: {{ $redisPass }} + + {{/* Nextcloud INITIAL credentials */}} + NEXTCLOUD_ADMIN_USER: {{ .Values.nextcloud.credentials.initialAdminUser | quote }} + NEXTCLOUD_ADMIN_PASSWORD: {{ .Values.nextcloud.credentials.initialAdminPassword | quote }} + + {{/* PHP Variables */}} + PHP_MEMORY_LIMIT: {{ .Values.nextcloud.php.memory_limit | quote }} + PHP_UPLOAD_LIMIT: {{ .Values.nextcloud.php.upload_limit | quote }} + + {{/* Notify Push */}} + NX_NOTIFY_PUSH: {{ .Values.nextcloud.notify_push.enabled | quote }} + {{- if .Values.nextcloud.notify_push.enabled }} + NX_NOTIFY_PUSH_ENDPOINT: {{ $accessUrl }}/push + {{- end }} + + {{/* Previews */}} + NX_PREVIEWS: {{ .Values.nextcloud.previews.enabled | quote }} + NX_PREVIEW_PROVIDERS: {{ join " " .Values.nextcloud.previews.providers }} + NX_PREVIEW_MAX_X: {{ .Values.nextcloud.previews.max_x | quote }} + NX_PREVIEW_MAX_Y: {{ .Values.nextcloud.previews.max_y | quote }} + NX_PREVIEW_MAX_MEMORY: {{ .Values.nextcloud.previews.max_memory | quote }} + NX_PREVIEW_MAX_FILESIZE_IMAGE: {{ .Values.nextcloud.previews.max_file_size_image | quote }} + NX_JPEG_QUALITY: {{ .Values.nextcloud.previews.jpeg_quality | quote }} + NX_PREVIEW_SQUARE_SIZES: {{ .Values.nextcloud.previews.square_sizes | quote }} + NX_PREVIEW_WIDTH_SIZES: {{ .Values.nextcloud.previews.width_sizes | quote }} + NX_PREVIEW_HEIGHT_SIZES: {{ .Values.nextcloud.previews.height_sizes | quote }} + + {{/* Imaginary */}} + NX_IMAGINARY: {{ and .Values.nextcloud.previews.enabled .Values.nextcloud.previews.imaginary | quote }} + {{- if and .Values.nextcloud.previews.enabled .Values.nextcloud.previews.imaginary }} + NX_IMAGINARY_URL: {{ printf "http://%v-imaginary:%v" $fullname .Values.service.imaginary.ports.imaginary.port }} + {{- end }} + + {{/* Expirations */}} + NX_ACTIVITY_EXPIRE_DAYS: {{ .Values.nextcloud.expirations.activity_expire_days | quote }} + NX_TRASH_RETENTION: {{ .Values.nextcloud.expirations.trash_retention_obligation | quote }} + NX_VERSIONS_RETENTION: {{ .Values.nextcloud.expirations.versions_retention_obligation | quote }} + + {{/* General */}} + NX_RUN_OPTIMIZE: {{ .Values.nextcloud.general.run_optimize | quote }} + NX_DEFAULT_PHONE_REGION: {{ .Values.nextcloud.general.default_phone_region | quote }} + NEXTCLOUD_DATA_DIR: {{ .Values.persistence.data.targetSelector.main.main.mountPath }} + NX_FORCE_ENABLE_ALLOW_LOCAL_REMOTE_SERVERS: {{ .Values.nextcloud.general.force_enable_allow_local_remote_servers | quote }} + + {{/* Files */}} + NX_SHARED_FOLDER_NAME: {{ .Values.nextcloud.files.shared_folder_name | quote }} + NX_MAX_CHUNKSIZE: {{ .Values.nextcloud.files.max_chunk_size | mul 1 | quote }} + + {{/* Logging */}} + NX_LOG_LEVEL: {{ .Values.nextcloud.logging.log_level | quote }} + NX_LOG_FILE: {{ .Values.nextcloud.logging.log_file | quote }} + NX_LOG_FILE_AUDIT: {{ .Values.nextcloud.logging.log_audit_file | quote }} + NX_LOG_DATE_FORMAT: {{ .Values.nextcloud.logging.log_date_format | quote }} + NX_LOG_TIMEZONE: {{ .Values.TZ | quote }} + + {{/* ClamAV */}} + NX_CLAMAV: {{ .Values.nextcloud.clamav.enabled | quote }} + {{- if .Values.nextcloud.clamav.enabled }} + NX_CLAMAV_HOST: {{ printf "%v-clamav" $fullname }} + NX_CLAMAV_PORT: {{ .Values.service.clamav.ports.clamav.targetPort | quote }} + NX_CLAMAV_STREAM_MAX_LENGTH: {{ .Values.nextcloud.clamav.stream_max_length | mul 1 | quote }} + NX_CLAMAV_FILE_MAX_SIZE: {{ .Values.nextcloud.clamav.file_max_size | quote }} + NX_CLAMAV_INFECTED_ACTION: {{ .Values.nextcloud.clamav.infected_action | quote }} + {{- end }} + + {{/* Collabora */}} + NX_COLLABORA: {{ .Values.nextcloud.collabora.enabled | quote }} + {{- if .Values.nextcloud.collabora.enabled }} + NX_COLLABORA_URL: {{ printf "%v/collabora" $accessUrl | quote }} + # Ideally this would be a combo of: public ip, pod cidr, svc cidr + # But not always people have static IP. + NX_COLLABORA_ALLOWLIST: "0.0.0.0/0" + {{- end }} + + {{/* Only Office */}} + NX_ONLYOFFICE: {{ .Values.nextcloud.onlyoffice.enabled | quote }} + {{- if .Values.nextcloud.onlyoffice.enabled }} + NX_ONLYOFFICE_URL: {{ .Values.nextcloud.onlyoffice.url | quote }} + NX_ONLYOFFICE_INTERNAL_URL: {{ .Values.nextcloud.onlyoffice.internal_url | quote }} + NX_ONLYOFFICE_VERIFY_SSL: {{ .Values.nextcloud.onlyoffice.verify_ssl | quote }} + NX_ONLYOFFICE_NEXTCLOUD_INTERNAL_URL: {{ printf "http://%v.svc.cluster.local:%v" $fqdn .Values.service.main.ports.main.port }} + NX_ONLYOFFICE_JWT: {{ .Values.nextcloud.onlyoffice.jwt | quote }} + NX_ONLYOFFICE_JWT_HEADER: {{ .Values.nextcloud.onlyoffice.jwt_header | quote }} + {{- end }} + + {{/* URLs */}} + NX_OVERWRITE_HOST: {{ $accessHostPort }} + NX_OVERWRITE_CLI_URL: {{ $accessUrl }} + # Return the protocol part of the URL + NX_OVERWRITE_PROTOCOL: {{ $accessProtocol | lower }} + # IP (or range in this case) of the proxy(ies) + NX_TRUSTED_PROXIES: | + {{ .Values.chartContext.podCIDR }} + {{ .Values.chartContext.svcCIDR }} + # fullname-* will allow access from the + # other services in the same namespace + NX_TRUSTED_DOMAINS: | + 127.0.0.1 + localhost + {{ $fullname }} + {{ printf "%v-*" $fullname }} + {{ $healthHost }} + {{- if not (contains "127.0.0.1" $accessHost) }} + {{- $accessHost | nindent 6 }} + {{- end -}} + {{- with .Values.nextcloud.general.accessIP }} + {{- . | nindent 6 }} + {{- end }} + +# TODO: Replace locations with ingress +# like /push, /.well-known/carddav, /.well-known/caldav +# needs some work as nginx converts urls to pretty urls +# before matching them to locations, so ingress needs to +# take that into consideration. +nginx-config: + enabled: true + data: + nginx.conf: | + worker_processes auto; + + error_log /var/log/nginx/error.log warn; + # Set to /tmp so it can run as non-root + pid /tmp/nginx.pid; + + events { + worker_connections 1024; + } + + http { + # Set to /tmp so it can run as non-root + client_body_temp_path /tmp/nginx/client_temp; + proxy_temp_path /tmp/nginx/proxy_temp_path; + fastcgi_temp_path /tmp/nginx/fastcgi_temp; + uwsgi_temp_path /tmp/nginx/uwsgi_temp; + scgi_temp_path /tmp/nginx/scgi_temp; + + include /etc/nginx/mime.types; + default_type application/octet-stream; + + log_format main '$remote_addr - $remote_user [$time_local] "$request" ' + '$status $body_bytes_sent "$http_referer" ' + '"$http_user_agent" "$http_x_forwarded_for"'; + + access_log /var/log/nginx/access.log main; + + sendfile on; + #tcp_nopush on; + + # Prevent nginx HTTP Server Detection + server_tokens off; + + keepalive_timeout 65; + + #gzip on; + + upstream php-handler { + server {{ printf "%v-nextcloud" $fullname }}:{{ .Values.service.nextcloud.ports.nextcloud.targetPort }}; + } + + server { + listen {{ .Values.service.main.ports.main.port }}; + absolute_redirect off; + + {{- if .Values.nextcloud.notify_push.enabled }} + # Forward Notify_Push "High Performance Backend" to it's own container + location ^~ /push/ { + # The trailing "/" is important! + proxy_pass http://{{ printf "%v-notify" $fullname }}:{{ .Values.service.notify.ports.notify.targetPort }}/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + proxy_set_header Host $host; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + } + {{- end }} + + # HSTS settings + # WARNING: Only add the preload option once you read about + # the consequences in https://hstspreload.org/. This option + # will add the domain to a hardcoded list that is shipped + # in all major browsers and getting removed from this list + # could take several months. + #add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;" always; + + # Set max upload size + client_max_body_size {{ .Values.nextcloud.php.upload_limit | default "512M" }}; + fastcgi_buffers 64 4K; + + # Enable gzip but do not remove ETag headers + gzip on; + gzip_vary on; + gzip_comp_level 4; + gzip_min_length 256; + gzip_proxied expired no-cache no-store private no_last_modified no_etag auth; + gzip_types application/atom+xml text/javascript application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/wasm application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy; + + # Pagespeed is not supported by Nextcloud, so if your server is built + # with the `ngx_pagespeed` module, uncomment this line to disable it. + #pagespeed off; + + include mime.types; + types { + text/javascript js mjs; + } + + # HTTP response headers borrowed from Nextcloud `.htaccess` + add_header Referrer-Policy "no-referrer" always; + add_header X-Content-Type-Options "nosniff" always; + add_header X-Download-Options "noopen" always; + add_header X-Frame-Options "SAMEORIGIN" always; + add_header X-Permitted-Cross-Domain-Policies "none" always; + add_header X-Robots-Tag "noindex, nofollow" always; + add_header X-XSS-Protection "1; mode=block" always; + + # Remove X-Powered-By, which is an information leak + fastcgi_hide_header X-Powered-By; + + # Path to the root of your installation + root {{ .Values.persistence.html.targetSelector.nginx.nginx.mountPath }}; + + # Specify how to handle directories -- specifying `/index.php$request_uri` + # here as the fallback means that Nginx always exhibits the desired behaviour + # when a client requests a path that corresponds to a directory that exists + # on the server. In particular, if that directory contains an index.php file, + # that file is correctly served; if it doesn't, then the request is passed to + # the front-end controller. This consistent behaviour means that we don't need + # to specify custom rules for certain paths (e.g. images and other assets, + # `/updater`, `/ocm-provider`, `/ocs-provider`), and thus + # `try_files $uri $uri/ /index.php$request_uri` + # always provides the desired behaviour. + index index.php index.html /index.php$request_uri; + + # Rule borrowed from `.htaccess` to handle Microsoft DAV clients + location = / { + if ( $http_user_agent ~ ^DavClnt ) { + return 302 /remote.php/webdav/$is_args$args; + } + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + # Make a regex exception for `/.well-known` so that clients can still + # access it despite the existence of the regex rule + # `location ~ /(\.|autotest|...)` which would otherwise handle requests + # for `/.well-known`. + location ^~ /.well-known { + # The rules in this block are an adaptation of the rules + # in `.htaccess` that concern `/.well-known`. + + location = /.well-known/carddav { return 301 /remote.php/dav/; } + location = /.well-known/caldav { return 301 /remote.php/dav/; } + + location /.well-known/acme-challenge { try_files $uri $uri/ =404; } + location /.well-known/pki-validation { try_files $uri $uri/ =404; } + + # Let Nextcloud's API for `/.well-known` URIs handle all other + # requests by passing them to the front-end controller. + return 301 /index.php$request_uri; + } + + # Rules borrowed from `.htaccess` to hide certain paths from clients + location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)(?:$|/) { return 404; } + location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) { return 404; } + + # Ensure this block, which passes PHP files to the PHP process, is above the blocks + # which handle static assets (as seen below). If this block is not declared first, + # then Nginx will encounter an infinite rewriting loop when it prepends `/index.php` + # to the URI, resulting in a HTTP 500 error response. + location ~ \.php(?:$|/) { + # Required for legacy support + rewrite ^/(?!index|remote|public|cron|core\/ajax\/update|status|ocs\/v[12]|updater\/.+|oc[ms]-provider\/.+|.+\/richdocumentscode\/proxy) /index.php$request_uri; + + fastcgi_split_path_info ^(.+?\.php)(/.*)$; + set $path_info $fastcgi_path_info; + + try_files $fastcgi_script_name =404; + + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param PATH_INFO $path_info; + #fastcgi_param HTTPS on; + + fastcgi_param modHeadersAvailable true; # Avoid sending the security headers twice + fastcgi_param front_controller_active true; # Enable pretty urls + fastcgi_pass php-handler; + + fastcgi_intercept_errors on; + fastcgi_request_buffering off; + proxy_send_timeout 3600s; + proxy_read_timeout 3600s; + fastcgi_send_timeout 3600s; + fastcgi_read_timeout 3600s; + } + + location ~ \.(?:css|js|svg|gif)$ { + try_files $uri /index.php$request_uri; + expires 6M; # Cache-Control policy borrowed from `.htaccess` + access_log off; # Optional: Don't log access to assets + } + + location ~ \.woff2?$ { + try_files $uri /index.php$request_uri; + expires 7d; # Cache-Control policy borrowed from `.htaccess` + access_log off; # Optional: Don't log access to assets + } + + # Rule borrowed from `.htaccess` + location /remote { + return 301 /remote.php$request_uri; + } + + location / { + try_files $uri $uri/ /index.php$request_uri; + } + } + } +{{- end -}} diff --git a/stable/nextcloud/28.1.30/templates/_cronjobs.tpl b/stable/nextcloud/28.1.30/templates/_cronjobs.tpl new file mode 100644 index 0000000000..0fa050dba6 --- /dev/null +++ b/stable/nextcloud/28.1.30/templates/_cronjobs.tpl @@ -0,0 +1,34 @@ +{{- define "nextcloud.cronjobs" -}} +{{- range $cj := .Values.cronjobs }} + {{- $name := $cj.name | required "Nextcloud - Expected non-empty name in cronjob" -}} + {{- $schedule := $cj.schedule | required "Nextcloud - Expected non-empty schedule in cronjob" }} + +{{ $name }}: + enabled: {{ $cj.enabled | quote }} + type: CronJob + schedule: {{ $schedule | quote }} + podSpec: + restartPolicy: Never + containers: + {{ $name }}: + enabled: true + primary: true + imageSelector: image + command: + - /bin/bash + - -c + - | + {{- range $cj.cmd }} + {{- . | nindent 12 }} + {{- else -}} + {{- fail "Nextcloud - Expected non-empty cmd in cronjob" -}} + {{- end }} + probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +{{- end }} +{{- end -}} diff --git a/stable/nextcloud/28.1.30/templates/_ingressInjector.tpl b/stable/nextcloud/28.1.30/templates/_ingressInjector.tpl new file mode 100644 index 0000000000..f99f5bd504 --- /dev/null +++ b/stable/nextcloud/28.1.30/templates/_ingressInjector.tpl @@ -0,0 +1,23 @@ +{{- define "nextcloud.ingressInjector" -}} + {{- if .Values.ingress.main.enabled -}} + {{- $injectPaths := list -}} + {{- if .Values.nextcloud.collabora.enabled -}} + {{- $injectPaths = mustAppend $injectPaths (include "nextcloud.collabora.ingress" $ | fromYaml) -}} + {{- end -}} + {{/* Append more paths here if needed */}} + + {{- range $host := .Values.ingress.main.hosts -}} + {{- $paths := $host.paths -}} + {{- $paths = concat $paths $injectPaths -}} + {{- $_ := set $host "paths" $paths -}} + {{- end -}} + {{- end -}} +{{- end -}} + +{{- define "nextcloud.collabora.ingress" -}} +path: /collabora/ +pathType: Prefix +overrideService: + name: collabora + port: {{ .Values.service.collabora.ports.collabora.port }} +{{- end -}} diff --git a/stable/nextcloud/28.1.30/templates/_initPerms.tpl b/stable/nextcloud/28.1.30/templates/_initPerms.tpl new file mode 100644 index 0000000000..ed94790ad9 --- /dev/null +++ b/stable/nextcloud/28.1.30/templates/_initPerms.tpl @@ -0,0 +1,29 @@ +{{- define "nextcloud.init.perms" -}} +{{- $uid := .Values.securityContext.container.runAsUser -}} +{{- $gid := .Values.securityContext.container.runAsGroup -}} +{{- $path := .Values.persistence.data.targetSelector.main.main.mountPath }} +enabled: true +type: install +imageSelector: alpineImage +securityContext: + runAsUser: 0 + runAsGroup: 0 + runAsNonRoot: false + capabilities: + disableS6Caps: true + add: + - DAC_OVERRIDE + - FOWNER + - CHOWN +command: /bin/sh +args: + - -c + - | + echo "Setting permissions to 700 on data directory [{{ $path }}] ..." + chmod 770 {{ $path }} | echo "Failed to set permissions on data directory [{{ $path }}]" + + echo "Setting ownership to {{ $uid }}:{{ $gid }} on data directory [{{ $path }}] ..." + chown {{ $uid }}:{{ $gid }} {{ $path }} | echo "Failed to set ownership on data directory [{{ $path }}]" + + echo "Finished." +{{- end -}} diff --git a/stable/nextcloud/28.1.30/templates/_validation.tpl b/stable/nextcloud/28.1.30/templates/_validation.tpl new file mode 100644 index 0000000000..5650c0f63f --- /dev/null +++ b/stable/nextcloud/28.1.30/templates/_validation.tpl @@ -0,0 +1,42 @@ +{{- define "nextcloud.validation" -}} + + {{- if not (mustRegexMatch "^[0-9]+(M|G){1}$" .Values.nextcloud.php.memory_limit) -}} + {{- fail (printf "Nextcloud - Expected Memory Limit to be in format [1M, 1G] but got [%v]" .Values.nextcloud.php.memory_limit) -}} + {{- end -}} + + {{- if not (mustRegexMatch "^[0-9]+(M|G){1}$" .Values.nextcloud.php.upload_limit) -}} + {{- fail (printf "Nextcloud - Expected Memory Limit to be in format [1M, 1G] but got [%v]" .Values.nextcloud.php.upload_limit) -}} + {{- end -}} + + {{- if not (deepEqual .Values.nextcloud.previews.providers (uniq .Values.nextcloud.previews.providers)) -}} + {{- fail (printf "Nextcloud - Expected preview providers to be unique but got [%v]" .Values.nextcloud.previews.providers) -}} + {{- end -}} + + {{- if and .Values.nextcloud.collabora.enabled .Values.nextcloud.onlyoffice.enabled -}} + {{- fail "Nextcloud - Expected only one of [Collabora, OnlyOffice] to be enabled" -}} + {{- end -}} + + {{- if contains "$" .Values.nextcloud.collabora.password -}} + {{- fail "Nextcloud - Collabora [Password] cannot contain [$]" -}} + {{- end -}} + + {{- if .Values.nextcloud.collabora.enabled -}} + {{- if lt (len .Values.nextcloud.collabora.password) 8 -}} + {{- fail "Nextcloud - Collabora [Password] must be at least 8 characters" -}} + {{- end -}} + + {{- $collaboraUIModes := (list "default" "compact" "tabbed") -}} + {{- if not (mustHas .Values.nextcloud.collabora.interface_mode $collaboraUIModes) -}} + {{- fail (printf "Nextcloud - Expected [Interface Mode] in Collabora to be one of [%v], but got [%v]" (join "," $collaboraUIModes) .Values.nextcloud.collabora.interface_mode) -}} + {{- end -}} + + {{- if not .Values.nextcloud.collabora.dictionaries -}} + {{- fail "Nextcloud - Expected non-empty Collabora [Dictionaries]" -}} + {{- end -}} + + {{- if not (deepEqual .Values.nextcloud.collabora.dictionaries (uniq .Values.nextcloud.collabora.dictionaries)) -}} + {{- fail "Nextcloud - Collabora [Dictionaries] must be unique" -}} + {{- end -}} + {{- end -}} + +{{- end -}} diff --git a/stable/nextcloud/28.1.30/templates/_waitNextcloud.tpl b/stable/nextcloud/28.1.30/templates/_waitNextcloud.tpl new file mode 100644 index 0000000000..24946d640e --- /dev/null +++ b/stable/nextcloud/28.1.30/templates/_waitNextcloud.tpl @@ -0,0 +1,25 @@ +{{- define "nextcloud.wait.nextcloud" -}} +{{- $fullname := (include "tc.v1.common.lib.chart.names.fullname" $) -}} +{{- $ncURL := printf "%v-nextcloud:%v" $fullname .Values.service.nextcloud.ports.nextcloud.targetPort }} +enabled: true +type: init +imageSelector: image +securityContext: +command: /bin/sh +args: + - -c + - | + echo "Waiting Nextcloud [{{ $ncURL }}] to be ready and installed..." + until \ + REQUEST_METHOD="GET" \ + SCRIPT_NAME="status.php" \ + SCRIPT_FILENAME="status.php" \ + cgi-fcgi -bind -connect "{{ $ncURL }}" | grep -q '"installed":true'; + do + echo "Waiting Nextcloud [{{ $ncURL }}] to be ready and installed..." + sleep 3 + done + + echo "Nextcloud is ready and installed..." + echo "Starting Nginx..." +{{- end -}} diff --git a/stable/nextcloud/28.1.30/templates/common.yaml b/stable/nextcloud/28.1.30/templates/common.yaml new file mode 100644 index 0000000000..d7576a0fb5 --- /dev/null +++ b/stable/nextcloud/28.1.30/templates/common.yaml @@ -0,0 +1,92 @@ +{{- $selector := dict -}} +{{- range $name := (list "main" "nextcloud-cron" "preview-cron") -}} + {{/* creates main: {} */}} + {{- $_ := set $selector $name dict -}} + {{/* sets main: {} to main: { main: {} } */}} + {{- $_ := set (get $selector $name) $name dict -}} +{{- end -}} + +{{- range $item := .Values.persistenceList -}} + {{- $_ := set $item "targetSelector" $selector -}} +{{- end -}} + +{{/* Make sure all variables are set properly */}} +{{- include "tc.v1.common.loader.init" . -}} + +{{- include "nextcloud.validation" $ -}} + +{{/* Render configmaps for all pods */}} +{{- $configmaps := include "nextcloud.configmaps" . | fromYaml -}} +{{- if $configmaps -}} + {{- $_ := mustMergeOverwrite .Values.configmap $configmaps -}} +{{- end -}} + +{{/* Create hostAliases (resolve ingress host to Node/LB IP) */}} +{{- $hostAlias := (list (dict + "ip" .Values.nextcloud.general.accessIP + "hostnames" ( + list (include "nextcloud.accesshost" $) + ) + )) -}} + +{{/* Add [hostAliases] to nextcloud and collabora pod */}} +{{- $_ := set .Values.workload.main.podSpec "hostAliases" $hostAlias -}} +{{- $_ := set .Values.workload.collabora.podSpec "hostAliases" $hostAlias -}} + +{{/* Add [init perms] container to nextcloud */}} +{{- if not (get .Values.workload.main.podSpec "initContainers") -}} + {{- $_ := set .Values.workload.main.podSpec "initContainers" dict -}} +{{- end -}} + +{{- $initPerms := (include "nextcloud.init.perms" . | fromYaml) -}} +{{- $_ := set .Values.workload.main.podSpec.initContainers "init-perms" $initPerms -}} + +{{/* Add [wait nextcloud] container to nginx */}} +{{- if not (get .Values.workload.nginx.podSpec "initContainers") -}} + {{- $_ := set .Values.workload.nginx.podSpec "initContainers" dict -}} +{{- end -}} +{{- $waitNextcloud := (include "nextcloud.wait.nextcloud" . | fromYaml) -}} +{{- $_ := set .Values.workload.nginx.podSpec.initContainers "wait-nextcloud" $waitNextcloud -}} + +{{/* Disable [notify push] if requested */}} +{{- if not .Values.nextcloud.notify_push.enabled -}} + {{- $_ := set .Values.workload.notify "enabled" false -}} + {{- $_ := set .Values.service.notify "enabled" false -}} +{{- else -}} + {{/* Add [wait nextcloud] container to notify push */}} + {{- if not (get .Values.workload.notify.podSpec "initContainers") -}} + {{- $_ := set .Values.workload.notify.podSpec "initContainers" dict -}} + {{- end -}} + {{- $waitNextcloud := (include "nextcloud.wait.nextcloud" . | fromYaml) -}} + {{- $_ := set .Values.workload.notify.podSpec.initContainers "wait-nextcloud" $waitNextcloud -}} +{{- end -}} + +{{/* Disable [clamav] if requested */}} +{{- if not .Values.nextcloud.clamav.enabled -}} + {{- $_ := set .Values.workload.clamav "enabled" false -}} + {{- $_ := set .Values.service.clamav "enabled" false -}} +{{- end -}} + +{{/* Disable [previews] if requested */}} +{{- if or (not .Values.nextcloud.previews.imaginary) (not .Values.nextcloud.previews.enabled) -}} + {{- $_ := set .Values.workload.imaginary "enabled" false -}} + {{- $_ := set .Values.service.imaginary "enabled" false -}} +{{- end -}} + +{{/* Disable [collabora] if requested */}} +{{- if not .Values.nextcloud.collabora.enabled -}} + {{- $_ := set .Values.workload.collabora "enabled" false -}} + {{- $_ := set .Values.service.collabora "enabled" false -}} +{{- end -}} + +{{/* Create [cronjobs] defined */}} +{{- $cronjobs := include "nextcloud.cronjobs" . | fromYaml -}} +{{- if $cronjobs -}} + {{- $_ := mustMergeOverwrite .Values.workload $cronjobs -}} +{{- end -}} + +{{/* TODO: Do we have to cleanup when something (eg Collabora) is disabled? */}} +{{- include "nextcloud.ingressInjector" $ -}} + +{{/* Render the templates */}} +{{- include "tc.v1.common.loader.apply" . -}} diff --git a/stable/splunk/6.1.10/values.yaml b/stable/nextcloud/28.1.30/values.yaml similarity index 100% rename from stable/splunk/6.1.10/values.yaml rename to stable/nextcloud/28.1.30/values.yaml diff --git a/stable/paperless-ngx/6.4.6/app-changelog.md b/stable/paperless-ngx/6.4.6/app-changelog.md deleted file mode 100644 index 79626a06f2..0000000000 --- a/stable/paperless-ngx/6.4.6/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [paperless-ngx-6.4.6](https://github.com/truecharts/charts/compare/paperless-ngx-6.4.5...paperless-ngx-6.4.6) (2024-01-27) - -### Chore - - - -- update helm general non-major by renovate ([#17525](https://github.com/truecharts/charts/issues/17525)) \ No newline at end of file diff --git a/stable/paperless-ngx/6.4.6/CHANGELOG.md b/stable/paperless-ngx/6.4.7/CHANGELOG.md similarity index 92% rename from stable/paperless-ngx/6.4.6/CHANGELOG.md rename to stable/paperless-ngx/6.4.7/CHANGELOG.md index 1a25208368..c42e90995f 100644 --- a/stable/paperless-ngx/6.4.6/CHANGELOG.md +++ b/stable/paperless-ngx/6.4.7/CHANGELOG.md @@ -7,6 +7,15 @@ title: Changelog +## [paperless-ngx-6.4.7](https://github.com/truecharts/charts/compare/paperless-ngx-6.4.6...paperless-ngx-6.4.7) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/paperless-ngx/paperless-ngx to v2.4.3[@839cabc](https://github.com/839cabc) by renovate ([#17676](https://github.com/truecharts/charts/issues/17676)) + + ## [paperless-ngx-6.4.6](https://github.com/truecharts/charts/compare/paperless-ngx-6.4.5...paperless-ngx-6.4.6) (2024-01-27) ### Chore @@ -88,12 +97,3 @@ title: Changelog - update container image common to v17.2.22[@e7c9056](https://github.com/e7c9056) by renovate ([#16986](https://github.com/truecharts/charts/issues/16986)) - - -## [paperless-ngx-6.3.0](https://github.com/truecharts/charts/compare/paperless-ngx-6.2.8...paperless-ngx-6.3.0) (2024-01-08) - -### Chore - - - -- update container image ghcr.io/paperless-ngx/paperless-ngx to v2.3.2[@3a54210](https://github.com/3a54210) by renovate ([#17017](https://github.com/truecharts/charts/issues/17017)) diff --git a/stable/paperless-ngx/6.4.6/Chart.yaml b/stable/paperless-ngx/6.4.7/Chart.yaml similarity index 97% rename from stable/paperless-ngx/6.4.6/Chart.yaml rename to stable/paperless-ngx/6.4.7/Chart.yaml index cf36f46052..2aaec20928 100644 --- a/stable/paperless-ngx/6.4.6/Chart.yaml +++ b/stable/paperless-ngx/6.4.7/Chart.yaml @@ -7,7 +7,7 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 2.4.2 +appVersion: 2.4.3 dependencies: - name: common version: 17.2.29 @@ -44,4 +44,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/paperless-ngx - https://ghcr.io/paperless-ngx/paperless-ngx type: application -version: 6.4.6 +version: 6.4.7 diff --git a/stable/paperless-ngx/6.4.6/README.md b/stable/paperless-ngx/6.4.7/README.md similarity index 100% rename from stable/paperless-ngx/6.4.6/README.md rename to stable/paperless-ngx/6.4.7/README.md diff --git a/stable/paperless-ngx/6.4.7/app-changelog.md b/stable/paperless-ngx/6.4.7/app-changelog.md new file mode 100644 index 0000000000..e7beec8046 --- /dev/null +++ b/stable/paperless-ngx/6.4.7/app-changelog.md @@ -0,0 +1,9 @@ + + +## [paperless-ngx-6.4.7](https://github.com/truecharts/charts/compare/paperless-ngx-6.4.6...paperless-ngx-6.4.7) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/paperless-ngx/paperless-ngx to v2.4.3[@839cabc](https://github.com/839cabc) by renovate ([#17676](https://github.com/truecharts/charts/issues/17676)) \ No newline at end of file diff --git a/stable/paperless-ngx/6.4.6/app-readme.md b/stable/paperless-ngx/6.4.7/app-readme.md similarity index 100% rename from stable/paperless-ngx/6.4.6/app-readme.md rename to stable/paperless-ngx/6.4.7/app-readme.md diff --git a/stable/paperless-ngx/6.4.7/charts/common-17.2.29.tgz b/stable/paperless-ngx/6.4.7/charts/common-17.2.29.tgz new file mode 100644 index 0000000000000000000000000000000000000000..32aa9351f147fbd4659b7948d068b57287f74904 GIT binary patch literal 98038 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 literal 0 HcmV?d00001 diff --git a/stable/paperless-ngx/6.4.7/charts/redis-11.1.16.tgz b/stable/paperless-ngx/6.4.7/charts/redis-11.1.16.tgz new file mode 100644 index 0000000000000000000000000000000000000000..b071f7a40098fcd00ca23e06a4d6a5ac6bf3fb6a GIT binary patch literal 104121 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

AlS>V#)) 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 F4FF(SYD@qC literal 0 HcmV?d00001 diff --git a/stable/paperless-ngx/6.4.6/ix_values.yaml b/stable/paperless-ngx/6.4.7/ix_values.yaml similarity index 96% rename from stable/paperless-ngx/6.4.6/ix_values.yaml rename to stable/paperless-ngx/6.4.7/ix_values.yaml index bbf8e316ba..ae6e94ea71 100644 --- a/stable/paperless-ngx/6.4.6/ix_values.yaml +++ b/stable/paperless-ngx/6.4.7/ix_values.yaml @@ -1,7 +1,7 @@ image: repository: ghcr.io/paperless-ngx/paperless-ngx pullPolicy: IfNotPresent - tag: 2.4.2@sha256:d632fac5bd143dcd8d846726d1c475c683b96ccbc4901cb8a1c2e02e5d54a4e9 + tag: 2.4.3@sha256:839cabc0c5859a844c72940468e700f668bb59c16743fd9e81d5e21845488a85 service: main: ports: diff --git a/stable/paperless-ngx/6.4.6/questions.yaml b/stable/paperless-ngx/6.4.7/questions.yaml similarity index 100% rename from stable/paperless-ngx/6.4.6/questions.yaml rename to stable/paperless-ngx/6.4.7/questions.yaml diff --git a/stable/paperless-ngx/6.4.7/templates/NOTES.txt b/stable/paperless-ngx/6.4.7/templates/NOTES.txt new file mode 100644 index 0000000000..efcb74cb77 --- /dev/null +++ b/stable/paperless-ngx/6.4.7/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/stable/paperless-ngx/6.4.6/templates/_secrets.tpl b/stable/paperless-ngx/6.4.7/templates/_secrets.tpl similarity index 100% rename from stable/paperless-ngx/6.4.6/templates/_secrets.tpl rename to stable/paperless-ngx/6.4.7/templates/_secrets.tpl diff --git a/stable/paperless-ngx/6.4.6/templates/common.yaml b/stable/paperless-ngx/6.4.7/templates/common.yaml similarity index 100% rename from stable/paperless-ngx/6.4.6/templates/common.yaml rename to stable/paperless-ngx/6.4.7/templates/common.yaml diff --git a/stable/paperless-ngx/6.4.7/values.yaml b/stable/paperless-ngx/6.4.7/values.yaml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/stable/readarr/19.1.14/CHANGELOG.md b/stable/readarr/19.1.14/CHANGELOG.md new file mode 100644 index 0000000000..5781e99c35 --- /dev/null +++ b/stable/readarr/19.1.14/CHANGELOG.md @@ -0,0 +1,99 @@ +--- +title: Changelog +--- + +**Important:** +*for the complete changelog, please refer to the website* + + + +## [readarr-19.1.14](https://github.com/truecharts/charts/compare/readarr-19.1.13...readarr-19.1.14) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/onedr0p/readarr-develop to v0.3.17.2409[@3d8be41](https://github.com/3d8be41) by renovate ([#17675](https://github.com/truecharts/charts/issues/17675)) + + +## [readarr-19.1.13](https://github.com/truecharts/charts/compare/readarr-19.1.12...readarr-19.1.13) (2024-01-26) + +### Chore + + + +- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) + + +## [readarr-19.1.12](https://github.com/truecharts/charts/compare/readarr-19.1.11...readarr-19.1.12) (2024-01-21) + +### Chore + + + +- update container image common to v17.2.28[@918b4c5](https://github.com/918b4c5) by renovate ([#17478](https://github.com/truecharts/charts/issues/17478)) + + +## [readarr-19.1.11](https://github.com/truecharts/charts/compare/readarr-19.1.10...readarr-19.1.11) (2024-01-21) + +### Chore + + + +- update container image common to v17.2.26[@24c98f7](https://github.com/24c98f7) by renovate ([#17409](https://github.com/truecharts/charts/issues/17409)) + + +## [readarr-19.1.10](https://github.com/truecharts/charts/compare/readarr-19.1.9...readarr-19.1.10) (2024-01-21) + +### Chore + + + +- update metadata in chart.yaml ([#17457](https://github.com/truecharts/charts/issues/17457)) + + +## [readarr-19.1.9](https://github.com/truecharts/charts/compare/readarr-19.1.8...readarr-19.1.9) (2024-01-21) + +### Chore + + + +- update container image ghcr.io/onedr0p/readarr-develop to v0.3.15.2376[@ac03108](https://github.com/ac03108) by renovate ([#17422](https://github.com/truecharts/charts/issues/17422)) + + + + +## [readarr-19.1.8](https://github.com/truecharts/charts/compare/readarr-19.1.7...readarr-19.1.8) (2024-01-09) + +### Chore + + + +- update container image common to v17.2.22[@e7c9056](https://github.com/e7c9056) by renovate ([#16986](https://github.com/truecharts/charts/issues/16986)) + + +## [readarr-19.1.7](https://github.com/truecharts/charts/compare/readarr-19.1.6...readarr-19.1.7) (2024-01-08) + +### Chore + + + +- update container image ghcr.io/onedr0p/readarr-develop to v0.3.14.2358[@b3b98cf](https://github.com/b3b98cf) by renovate ([#16996](https://github.com/truecharts/charts/issues/16996)) + + +## [readarr-19.1.6](https://github.com/truecharts/charts/compare/readarr-19.1.5...readarr-19.1.6) (2024-01-02) + +### Chore + + + +- force bump to ensure up-to-date catalogs + + +## [readarr-19.1.5](https://github.com/truecharts/charts/compare/readarr-19.1.4...readarr-19.1.5) (2024-01-01) + +### Chore + + + +- increase common version for oci fixes diff --git a/stable/readarr/19.1.14/Chart.yaml b/stable/readarr/19.1.14/Chart.yaml new file mode 100644 index 0000000000..8bc9899a7d --- /dev/null +++ b/stable/readarr/19.1.14/Chart.yaml @@ -0,0 +1,42 @@ +annotations: + max_scale_version: 23.10.2 + min_scale_version: 23.10.0 + truecharts.org/SCALE-support: "true" + truecharts.org/category: media + truecharts.org/max_helm_version: "3.14" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: stable +apiVersion: v2 +appVersion: 0.3.17.2409 +dependencies: + - name: common + version: 17.2.29 + repository: oci://tccr.io/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] +deprecated: false +description: A fork of Radarr to work with Books & AudioBooks +home: https://truecharts.org/charts/stable/readarr +icon: https://truecharts.org/img/hotlink-ok/chart-icons/readarr.png +keywords: + - readarr + - torrent + - usenet + - AudioBooks + - ebooks +kubeVersion: ">=1.24.0-0" +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: readarr +sources: + - https://readarr.com + - https://github.com/Readarr/Readarr + - https://github.com/truecharts/charts/tree/master/charts/stable/readarr + - https://ghcr.io/onedr0p/exportarr + - https://ghcr.io/onedr0p/readarr-develop +type: application +version: 19.1.14 diff --git a/stable/readarr/19.1.14/README.md b/stable/readarr/19.1.14/README.md new file mode 100644 index 0000000000..7fa53aa4e9 --- /dev/null +++ b/stable/readarr/19.1.14/README.md @@ -0,0 +1,28 @@ +--- +title: README +--- + +## General Info + +TrueCharts can be installed as both _normal_ Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/stable/readarr) + +**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)** + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/charts/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/sponsor) or contributing back to the project any way you can! + +_All Rights Reserved - The TrueCharts Project_ diff --git a/stable/readarr/19.1.14/app-changelog.md b/stable/readarr/19.1.14/app-changelog.md new file mode 100644 index 0000000000..52522fb189 --- /dev/null +++ b/stable/readarr/19.1.14/app-changelog.md @@ -0,0 +1,9 @@ + + +## [readarr-19.1.14](https://github.com/truecharts/charts/compare/readarr-19.1.13...readarr-19.1.14) (2024-01-29) + +### Chore + + + +- update container image ghcr.io/onedr0p/readarr-develop to v0.3.17.2409[@3d8be41](https://github.com/3d8be41) by renovate ([#17675](https://github.com/truecharts/charts/issues/17675)) \ No newline at end of file diff --git a/stable/readarr/19.1.14/app-readme.md b/stable/readarr/19.1.14/app-readme.md new file mode 100644 index 0000000000..3bc4be21cf --- /dev/null +++ b/stable/readarr/19.1.14/app-readme.md @@ -0,0 +1,8 @@ +A fork of Radarr to work with Books & AudioBooks + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/readarr](https://truecharts.org/charts/stable/readarr) + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! diff --git a/stable/readarr/19.1.14/charts/common-17.2.29.tgz b/stable/readarr/19.1.14/charts/common-17.2.29.tgz new file mode 100644 index 0000000000000000000000000000000000000000..32aa9351f147fbd4659b7948d068b57287f74904 GIT binary patch literal 98038 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 literal 0 HcmV?d00001 diff --git a/stable/readarr/19.1.14/ix_values.yaml b/stable/readarr/19.1.14/ix_values.yaml new file mode 100644 index 0000000000..10ed7ff8c0 --- /dev/null +++ b/stable/readarr/19.1.14/ix_values.yaml @@ -0,0 +1,109 @@ +image: + repository: ghcr.io/onedr0p/readarr-develop + pullPolicy: IfNotPresent + tag: 0.3.17.2409@sha256:3d8be41d033ca5d912adc7b1d2650e768ea51ec1cabb4fac0d672ac039bd05ae +exportarrImage: + repository: ghcr.io/onedr0p/exportarr + pullPolicy: IfNotPresent + tag: v1.6.0@sha256:b522e128509b766cf66f847190fccd225ff194dc76775fe6a215f2dd3010cac2 +securityContext: + container: + readOnlyRootFilesystem: false +service: + main: + ports: + main: + port: 8787 + metrics: + enabled: true + type: ClusterIP + targetSelector: exportarr + ports: + metrics: + enabled: true + port: 8788 + targetSelector: exportarr +workload: + main: + podSpec: + containers: + main: + probes: + liveness: + enabled: true + type: http + path: /ping + readiness: + enabled: true + type: http + path: /ping + startup: + enabled: true + type: http + path: /ping + env: + READARR__PORT: "{{ .Values.service.main.ports.main.port }}" + READARR__AUTHENTICATION_METHOD: "None" + exportarr: + enabled: true + type: Deployment + strategy: RollingUpdate + replicas: 1 + podSpec: + containers: + exportarr: + primary: true + enabled: true + imageSelector: exportarrImage + args: + - readarr + probes: + liveness: + enabled: true + type: http + path: /healthz + port: "{{ .Values.service.metrics.ports.metrics.port }}" + readiness: + enabled: true + type: http + path: /healthz + port: "{{ .Values.service.metrics.ports.metrics.port }}" + startup: + enabled: true + type: http + path: /healthz + port: "{{ .Values.service.metrics.ports.metrics.port }}" + env: + INTERFACE: 0.0.0.0 + PORT: "{{ .Values.service.metrics.ports.metrics.port }}" + URL: '{{ printf "http://%v:%v" (include "tc.v1.common.lib.chart.names.fullname" $) .Values.service.main.ports.main.port }}' + # additional metrics (slow) + # ENABLE_ADDITIONAL_METRICS: false + # enable gathering unknown queue items + # ENABLE_UNKNOWN_QUEUE_ITEMS: false + CONFIG: "/config/config.xml" +persistence: + config: + enabled: true + targetSelector: + main: + main: + mountPath: /config + exportarr: + exportarr: + mountPath: /config + readOnly: true +metrics: + main: + enabled: true + type: "servicemonitor" + endpoints: + - port: metrics + path: /metrics + targetSelector: metrics + prometheusRule: + enabled: false +portal: + open: + enabled: true +updated: true diff --git a/stable/readarr/19.1.14/questions.yaml b/stable/readarr/19.1.14/questions.yaml new file mode 100644 index 0000000000..6f86544789 --- /dev/null +++ b/stable/readarr/19.1.14/questions.yaml @@ -0,0 +1,2885 @@ +groups: + - name: Container Image + description: Image to be used for container + - name: General Settings + description: General Deployment Settings + - name: Workload Settings + description: Workload Settings + - 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: Postgresql + description: Postgresql + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_tcportal-open_protocol" + host: + - "$kubernetes-resource_configmap_tcportal-open_host" + ports: + - "$kubernetes-resource_configmap_tcportal-open_port" +questions: + - variable: global + group: General Settings + label: "Global Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: stopAll + label: Stop All + description: "Stops All Running pods and hibernates cnpg" + schema: + type: boolean + default: false + - variable: workload + group: "Workload Settings" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type (Advanced) + schema: + type: string + default: Deployment + enum: + - value: Deployment + description: Deployment + - value: DaemonSet + description: DaemonSet + - variable: replicas + label: Replicas (Advanced) + description: Set the number of Replicas + schema: + type: int + show_if: [["type", "!=", "DaemonSet"]] + default: 1 + - variable: podSpec + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: containers + label: Containers + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: Main Container + schema: + additional_attrs: true + type: dict + attrs: + - variable: env + group: App Configuration + label: Image Environment + schema: + additional_attrs: true + type: dict + attrs: + - variable: READARR__AUTHENTICATION_METHOD + label: Auth Method + description: Sets the auth method. + schema: + type: string + default: "" + enum: + - value: "" + description: In-App Setting + - value: None + description: None + - value: Basic + description: Basic + - value: Forms + description: Forms + - variable: envList + label: Extra Environment Variables + description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." + 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: extraArgs + label: Extra Args + schema: + type: list + default: [] + items: + - variable: arg + label: Arg + schema: + type: string + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: command + label: Command + schema: + type: list + default: [] + items: + - variable: param + label: Param + schema: + type: string + - variable: TZ + label: Timezone + group: "General Settings" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + - variable: podOptions + group: "General Settings" + label: "Global Pod Options (Advanced)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: expertPodOpts + label: "Expert - Pod Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + label: "Host Networking" + schema: + type: boolean + default: false + - variable: dnsConfig + label: "DNS Configuration" + schema: + type: dict + additional_attrs: true + attrs: + - variable: options + label: "Options" + schema: + type: list + default: [{"name": "ndots", "value": "1"}] + items: + - variable: optionsEntry + label: "Option Entry" + schema: + type: dict + additional_attrs: true + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + - variable: nameservers + label: "Nameservers" + schema: + type: list + default: [] + items: + - variable: nsEntry + label: "Nameserver Entry" + schema: + type: string + required: true + - variable: searches + label: "Searches" + schema: + type: list + default: [] + items: + - variable: searchEntry + label: "Search Entry" + schema: + type: string + required: true + + - variable: imagePullSecretList + group: "General Settings" + label: "Image Pull Secrets" + schema: + type: list + default: [] + items: + - variable: pullsecretentry + label: "Pull Secret" + schema: + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: true + - variable: data + label: Data + schema: + type: dict + additional_attrs: true + attrs: + - variable: registry + label: "Registry" + schema: + type: string + required: true + default: "https://index.docker.io/v1/" + - variable: username + label: "Username" + schema: + type: string + required: true + default: "" + - variable: password + label: "Password" + schema: + type: string + required: true + private: true + default: "" + - variable: email + label: "Email" + schema: + type: string + required: true + default: "" + - 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - 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: 8787 + required: true + - variable: serviceexpert + group: Networking and Services + label: Show Expert Config + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: scaleExternalInterface + description: Add External Interfaces + label: Add external Interfaces + group: Networking + schema: + type: list + items: + - variable: interfaceConfiguration + description: Interface Configuration + label: Interface Configuration + schema: + additional_attrs: true + 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: + additional_attrs: true + 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 + - variable: staticIPConfigurations + label: Static IP Addresses + schema: + type: list + show_if: [["type", "=", "static"]] + items: + - variable: staticIP + label: Static IP + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: Static Routes + schema: + type: list + show_if: [["type", "=", "static"]] + 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: 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - value: Simple + description: Deprecated CHANGE THIS + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: advancedsvcset + label: Show Advanced Service Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + type: list + default: [] + items: + - variable: externalIP + label: External IP + schema: + type: string + - variable: ipFamilyPolicy + label: IP Family Policy + description: Specify the IP Policy + schema: + type: string + default: SingleStack + enum: + - value: SingleStack + description: SingleStack + - value: PreferDualStack + description: PreferDualStack + - value: RequireDualStack + description: RequireDualStack + - variable: ipFamilies + label: IP Families + description: (Advanced) The IP Families that should be used + schema: + type: list + default: [] + items: + - variable: ipFamily + label: IP Family + 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: 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: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: hostPath + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - 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: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - 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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name (Optional) + description: Defaults to chart name + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description (Optional) + description: Defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: icon + label: Icon (Optional) + description: Defaults to chart icon + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: widget + label: Widget Settings + schema: + type: dict + additional_attrs: true + show_if: [["enabled", "=", true]] + attrs: + - variable: enabled + label: Enable Widget + description: When disabled all widget annotations are skipped. + schema: + type: boolean + default: true + - variable: custom + label: Options + schema: + type: dict + additional_attrs: true + attrs: + - variable: key + label: API-key (key) + schema: + type: string + default: "" + - variable: customkv + label: Custom Options + schema: + type: list + default: [] + items: + - variable: option + label: Option + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + default: "" + required: true + - variable: value + label: Value + schema: + type: string + default: "" + required: true + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: overrideService + 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: [] + show_if: [["certificateIssuer", "=", ""]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your Cert-Manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: scaleCert + label: Use TrueNAS SCALE Certificate (Deprecated) + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: "Allow Cross Origin Requests" + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: namespace + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description + description: defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: securityContext + group: Security and Permissions + label: Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: container + label: Container + schema: + additional_attrs: true + type: dict + attrs: + # Settings from questions.yaml get appended here on a per-app basis + - 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 + # Settings from questions.yaml get appended here on a per-app basis + - 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 + show_if: [["runAsUser", "=", 0]] + 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: "0022" + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: true + - variable: pod + label: Pod + schema: + additional_attrs: true + type: dict + attrs: + - 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 + # Settings from questions.yaml get appended here on a per-app basis + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: resources + group: Resources and Devices + label: "Resource Limits" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: Advanced Limit Resource Consumption + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 4000m + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: RAM + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/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 + hidden: true + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 10m + hidden: true + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 50Mi + hidden: true + 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: device + 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" + - variable: scaleGPU + label: GPU Configuration + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: scaleGPUEntry + label: GPU + schema: + additional_attrs: true + type: dict + attrs: + # Specify GPU configuration + - variable: gpu + label: Select GPU + schema: + additional_attrs: true + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + - variable: workaround + label: "Workaround" + schema: + type: string + default: workaround + hidden: true + - variable: metrics + group: Metrics + label: Prometheus Metrics + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: Main Metrics + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + description: Enable Prometheus Metrics + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: prometheusRule + label: PrometheusRule + description: Enable and configure Prometheus Rules for the App. + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + description: Enable Prometheus Metrics + schema: + type: boolean + default: false + # TODO: Rule List section +# - variable: horizontalPodAutoscaler +# group: Advanced +# label: (Advanced) Horizontal Pod Autoscaler +# schema: +# type: list +# default: [] +# items: +# - variable: hpaEntry +# label: HPA Entry +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: name +# label: Name +# schema: +# type: string +# required: true +# default: "" +# - 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: + type: list + default: [] + items: + - variable: netPolicyEntry + label: Network Policy Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - 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: 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: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: NodePort + description: Deprecated CHANGE THIS + - value: ClusterIP + description: ClusterIP + - value: LoadBalancer + description: LoadBalancer + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + default: 36107 + - variable: ingress + label: "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: [{path: "/", pathType: "Prefix"}] + 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: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + 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: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - 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: 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: 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: gluetun + description: Gluetun + - value: tailscale + description: Tailscale + - value: openvpn + description: OpenVPN (Deprecated) + - value: wireguard + description: Wireguard (Deprecated) + - variable: openvpn + label: OpenVPN Settings + schema: + additional_attrs: true + 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 + show_if: [["username", "!=", ""]] + default: "" + required: true + - variable: tailscale + label: Tailscale Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "tailscale"]] + attrs: + - variable: authkey + label: Authentication Key + description: Provide an auth key to automatically authenticate the node as your user account. + schema: + type: string + private: true + default: "" + - variable: auth_once + label: Auth Once + description: Only attempt to log in if not already logged in. + schema: + type: boolean + default: true + - variable: accept_dns + label: Accept DNS + description: Accept DNS configuration from the admin console. + schema: + type: boolean + default: false + - variable: userspace + label: Userspace + description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. + schema: + type: boolean + default: false + - variable: routes + label: Routes + description: Expose physical subnet routes to your entire Tailscale network. + schema: + type: string + default: "" + - variable: dest_ip + label: Destination IP + description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. + schema: + type: string + default: "" + - variable: sock5_server + label: Sock5 Server + description: The address on which to listen for SOCKS5 proxying into the tailscale net. + schema: + type: string + default: "" + - variable: outbound_http_proxy_listen + label: Outbound HTTP Proxy Listen + description: The address on which to listen for HTTP proxying into the tailscale net. + schema: + type: string + default: "" + - variable: extra_args + label: Extra Args + description: Extra Args + schema: + type: string + default: "" + - variable: daemon_extra_args + label: Tailscale Daemon Extra Args + description: Tailscale Daemon Extra Args + schema: + type: string + default: "" + - 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: string + show_if: [["type", "!=", "disabled"]] + default: "" + + - 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 + max_length: 10240 + - variable: docs + group: Documentation + label: Please read the documentation at https://truecharts.org + description: 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: donateNag + group: Documentation + label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor + description: Please consider supporting TrueCharts, see +
https://truecharts.org/sponsor + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDonate + label: I have considered donating + schema: + type: boolean + default: true + hidden: true diff --git a/stable/readarr/19.1.14/templates/NOTES.txt b/stable/readarr/19.1.14/templates/NOTES.txt new file mode 100644 index 0000000000..efcb74cb77 --- /dev/null +++ b/stable/readarr/19.1.14/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/stable/readarr/19.1.14/templates/common.yaml b/stable/readarr/19.1.14/templates/common.yaml new file mode 100644 index 0000000000..3c93f57861 --- /dev/null +++ b/stable/readarr/19.1.14/templates/common.yaml @@ -0,0 +1,11 @@ +{{/* Make sure all variables are set properly */}} +{{- include "tc.v1.common.loader.init" . -}} + +{{/* Disable [exportarr] if requested */}} +{{- if not .Values.metrics.main.enabled -}} + {{- $_ := set .Values.workload.exportarr "enabled" false -}} + {{- $_ := set .Values.service.metrics "enabled" false -}} +{{- end -}} + +{{/* Render the templates */}} +{{- include "tc.v1.common.loader.apply" . -}} diff --git a/stable/readarr/19.1.14/values.yaml b/stable/readarr/19.1.14/values.yaml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/stable/seafile/4.1.14/app-changelog.md b/stable/seafile/4.1.14/app-changelog.md deleted file mode 100644 index f72356df3a..0000000000 --- a/stable/seafile/4.1.14/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [seafile-4.1.14](https://github.com/truecharts/charts/compare/seafile-4.1.13...seafile-4.1.14) (2024-01-27) - -### Chore - - - -- update helm general non-major by renovate ([#17525](https://github.com/truecharts/charts/issues/17525)) \ No newline at end of file diff --git a/stable/seafile/4.1.14/CHANGELOG.md b/stable/seafile/4.1.15/CHANGELOG.md similarity index 89% rename from stable/seafile/4.1.14/CHANGELOG.md rename to stable/seafile/4.1.15/CHANGELOG.md index de4f6df90b..f274ec13e3 100644 --- a/stable/seafile/4.1.14/CHANGELOG.md +++ b/stable/seafile/4.1.15/CHANGELOG.md @@ -7,6 +7,15 @@ title: Changelog +## [seafile-4.1.15](https://github.com/truecharts/charts/compare/seafile-4.1.14...seafile-4.1.15) (2024-01-29) + +### Chore + + + +- update container image seafileltd/seafile-mc to v11.0.4[@708f441](https://github.com/708f441) by renovate ([#17682](https://github.com/truecharts/charts/issues/17682)) + + ## [seafile-4.1.14](https://github.com/truecharts/charts/compare/seafile-4.1.13...seafile-4.1.14) (2024-01-27) ### Chore @@ -88,12 +97,3 @@ title: Changelog - update helm general non-major by renovate ([#16743](https://github.com/truecharts/charts/issues/16743)) - - -## [seafile-4.1.5](https://github.com/truecharts/charts/compare/seafile-4.1.4...seafile-4.1.5) (2024-01-01) - -### Chore - - - -- increase common version for oci fixes diff --git a/stable/seafile/4.1.14/Chart.yaml b/stable/seafile/4.1.15/Chart.yaml similarity index 97% rename from stable/seafile/4.1.14/Chart.yaml rename to stable/seafile/4.1.15/Chart.yaml index 657014423d..d8a2243982 100644 --- a/stable/seafile/4.1.14/Chart.yaml +++ b/stable/seafile/4.1.15/Chart.yaml @@ -7,7 +7,7 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 11.0.3 +appVersion: 11.0.4 dependencies: - name: common version: 17.2.29 @@ -43,4 +43,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/seafile - https://hub.docker.com/r/seafileltd/seafile-mc type: application -version: 4.1.14 +version: 4.1.15 diff --git a/stable/seafile/4.1.15/LICENSE b/stable/seafile/4.1.15/LICENSE new file mode 100644 index 0000000000..33a8cbb23f --- /dev/null +++ b/stable/seafile/4.1.15/LICENSE @@ -0,0 +1,106 @@ +Business Source License 1.1 + +Parameters + +Licensor: The TrueCharts Project, it's owner and it's contributors +Licensed Work: The TrueCharts "Blocky" Helm Chart +Additional Use Grant: You may use the licensed work in production, as long + as it is directly sourced from a TrueCharts provided + official repository, catalog or source. You may also make private + modification to the directly sourced licenced work, + when used in production. + + The following cases are, due to their nature, also + defined as 'production use' and explicitly prohibited: + - Bundling, including or displaying the licensed work + with(in) another work intended for production use, + with the apparent intend of facilitating and/or + promoting production use by third parties in + violation of this license. + +Change Date: 2050-01-01 + +Change License: 3-clause BSD license + +For information about alternative licensing arrangements for the Software, +please contact: legal@truecharts.org + +Notice + +The Business Source License (this document, or the “License”) is not an Open +Source license. However, the Licensed Work will eventually be made available +under an Open Source License, as stated in this License. + +License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved. +“Business Source License” is a trademark of MariaDB Corporation Ab. + +----------------------------------------------------------------------------- + +Business Source License 1.1 + +Terms + +The Licensor hereby grants you the right to copy, modify, create derivative +works, redistribute, and make non-production use of the Licensed Work. The +Licensor may make an Additional Use Grant, above, permitting limited +production use. + +Effective on the Change Date, or the fourth anniversary of the first publicly +available distribution of a specific version of the Licensed Work under this +License, whichever comes first, the Licensor hereby grants you rights under +the terms of the Change License, and the rights granted in the paragraph +above terminate. + +If your use of the Licensed Work does not comply with the requirements +currently in effect as described in this License, you must purchase a +commercial license from the Licensor, its affiliated entities, or authorized +resellers, or you must refrain from using the Licensed Work. + +All copies of the original and modified Licensed Work, and derivative works +of the Licensed Work, are subject to this License. This License applies +separately for each version of the Licensed Work and the Change Date may vary +for each version of the Licensed Work released by Licensor. + +You must conspicuously display this License on each original or modified copy +of the Licensed Work. If you receive the Licensed Work in original or +modified form from a third party, the terms and conditions set forth in this +License apply to your use of that work. + +Any use of the Licensed Work in violation of this License will automatically +terminate your rights under this License for the current and all other +versions of the Licensed Work. + +This License does not grant you any right in any trademark or logo of +Licensor or its affiliates (provided that you may use a trademark or logo of +Licensor as expressly required by this License). + +TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON +AN “AS IS” BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, +EXPRESS OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND +TITLE. + +MariaDB hereby grants you permission to use this License’s text to license +your works, and to refer to it using the trademark “Business Source License”, +as long as you comply with the Covenants of Licensor below. + +Covenants of Licensor + +In consideration of the right to use this License’s text and the “Business +Source License” name and trademark, Licensor covenants to MariaDB, and to all +other recipients of the licensed work to be provided by Licensor: + +1. To specify as the Change License the GPL Version 2.0 or any later version, + or a license that is compatible with GPL Version 2.0 or a later version, + where “compatible” means that software provided under the Change License can + be included in a program with software provided under GPL Version 2.0 or a + later version. Licensor may specify additional Change Licenses without + limitation. + +2. To either: (a) specify an additional grant of rights to use that does not + impose any additional restriction on the right granted in this License, as + the Additional Use Grant; or (b) insert the text “None”. + +3. To specify a Change Date. + +4. Not to modify this License in any other way. diff --git a/stable/seafile/4.1.14/README.md b/stable/seafile/4.1.15/README.md similarity index 100% rename from stable/seafile/4.1.14/README.md rename to stable/seafile/4.1.15/README.md diff --git a/stable/seafile/4.1.15/app-changelog.md b/stable/seafile/4.1.15/app-changelog.md new file mode 100644 index 0000000000..da463f1f7c --- /dev/null +++ b/stable/seafile/4.1.15/app-changelog.md @@ -0,0 +1,9 @@ + + +## [seafile-4.1.15](https://github.com/truecharts/charts/compare/seafile-4.1.14...seafile-4.1.15) (2024-01-29) + +### Chore + + + +- update container image seafileltd/seafile-mc to v11.0.4[@708f441](https://github.com/708f441) by renovate ([#17682](https://github.com/truecharts/charts/issues/17682)) \ No newline at end of file diff --git a/stable/seafile/4.1.14/app-readme.md b/stable/seafile/4.1.15/app-readme.md similarity index 100% rename from stable/seafile/4.1.14/app-readme.md rename to stable/seafile/4.1.15/app-readme.md diff --git a/stable/seafile/4.1.15/charts/common-17.2.29.tgz b/stable/seafile/4.1.15/charts/common-17.2.29.tgz new file mode 100644 index 0000000000000000000000000000000000000000..32aa9351f147fbd4659b7948d068b57287f74904 GIT binary patch literal 98038 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 literal 0 HcmV?d00001 diff --git a/stable/seafile/4.1.14/charts/mariadb-12.1.12.tgz b/stable/seafile/4.1.15/charts/mariadb-12.1.12.tgz similarity index 100% rename from stable/seafile/4.1.14/charts/mariadb-12.1.12.tgz rename to stable/seafile/4.1.15/charts/mariadb-12.1.12.tgz diff --git a/stable/seafile/4.1.14/ix_values.yaml b/stable/seafile/4.1.15/ix_values.yaml similarity index 93% rename from stable/seafile/4.1.14/ix_values.yaml rename to stable/seafile/4.1.15/ix_values.yaml index e51dbfb505..e7ad46cd45 100644 --- a/stable/seafile/4.1.14/ix_values.yaml +++ b/stable/seafile/4.1.15/ix_values.yaml @@ -1,6 +1,6 @@ image: repository: seafileltd/seafile-mc - tag: 11.0.3@sha256:2823eda58bd83b83a21aa874409768b6d6ed57f899f715fcf58edb8d6e6cad2f + tag: 11.0.4@sha256:708f441c25d6c9117a763d02f39e8ac1cc075d129fe1fa7702165655526198d5 pullPolicy: IfNotPresent service: main: diff --git a/stable/seafile/4.1.14/questions.yaml b/stable/seafile/4.1.15/questions.yaml similarity index 100% rename from stable/seafile/4.1.14/questions.yaml rename to stable/seafile/4.1.15/questions.yaml diff --git a/stable/seafile/4.1.15/templates/NOTES.txt b/stable/seafile/4.1.15/templates/NOTES.txt new file mode 100644 index 0000000000..efcb74cb77 --- /dev/null +++ b/stable/seafile/4.1.15/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/stable/seafile/4.1.15/templates/common.yaml b/stable/seafile/4.1.15/templates/common.yaml new file mode 100644 index 0000000000..b51394e00a --- /dev/null +++ b/stable/seafile/4.1.15/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.v1.common.loader.all" . }} diff --git a/stable/seafile/4.1.15/values.yaml b/stable/seafile/4.1.15/values.yaml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/stable/sourcegraph/4.1.11/app-changelog.md b/stable/sourcegraph/4.1.11/app-changelog.md deleted file mode 100644 index 3c722fec5e..0000000000 --- a/stable/sourcegraph/4.1.11/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [sourcegraph-4.1.11](https://github.com/truecharts/charts/compare/sourcegraph-4.1.10...sourcegraph-4.1.11) (2024-01-26) - -### Chore - - - -- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) \ No newline at end of file diff --git a/stable/sourcegraph/4.1.11/CHANGELOG.md b/stable/sourcegraph/4.1.12/CHANGELOG.md similarity index 85% rename from stable/sourcegraph/4.1.11/CHANGELOG.md rename to stable/sourcegraph/4.1.12/CHANGELOG.md index 090bd67163..0c16a4de64 100644 --- a/stable/sourcegraph/4.1.11/CHANGELOG.md +++ b/stable/sourcegraph/4.1.12/CHANGELOG.md @@ -7,6 +7,15 @@ title: Changelog +## [sourcegraph-4.1.12](https://github.com/truecharts/charts/compare/sourcegraph-4.1.11...sourcegraph-4.1.12) (2024-01-29) + +### Chore + + + +- update container image sourcegraph/server to v5.2.7[@e1746eb](https://github.com/e1746eb) by renovate ([#17683](https://github.com/truecharts/charts/issues/17683)) + + ## [sourcegraph-4.1.11](https://github.com/truecharts/charts/compare/sourcegraph-4.1.10...sourcegraph-4.1.11) (2024-01-26) ### Chore @@ -88,12 +97,3 @@ title: Changelog ### Chore - -- bump all charts for OCI test push - -- move everything to consume OCI-hosted common-chart dependency - -- update container image common to v17.2.19[@4ebb688](https://github.com/4ebb688) by renovate ([#16733](https://github.com/truecharts/charts/issues/16733)) - -- update container image common to v17.2.18[@085ba3c](https://github.com/085ba3c) by renovate ([#16732](https://github.com/truecharts/charts/issues/16732)) - diff --git a/stable/sourcegraph/4.1.11/Chart.yaml b/stable/sourcegraph/4.1.12/Chart.yaml similarity index 96% rename from stable/sourcegraph/4.1.11/Chart.yaml rename to stable/sourcegraph/4.1.12/Chart.yaml index 52f52dc7fc..5dc25b67cd 100644 --- a/stable/sourcegraph/4.1.11/Chart.yaml +++ b/stable/sourcegraph/4.1.12/Chart.yaml @@ -7,7 +7,7 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 5.2.6 +appVersion: 5.2.7 dependencies: - name: common version: 17.2.29 @@ -37,4 +37,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/sourcegraph - https://hub.docker.com/r/sourcegraph/server type: application -version: 4.1.11 +version: 4.1.12 diff --git a/stable/sourcegraph/4.1.11/README.md b/stable/sourcegraph/4.1.12/README.md similarity index 100% rename from stable/sourcegraph/4.1.11/README.md rename to stable/sourcegraph/4.1.12/README.md diff --git a/stable/sourcegraph/4.1.12/app-changelog.md b/stable/sourcegraph/4.1.12/app-changelog.md new file mode 100644 index 0000000000..edd21018a8 --- /dev/null +++ b/stable/sourcegraph/4.1.12/app-changelog.md @@ -0,0 +1,9 @@ + + +## [sourcegraph-4.1.12](https://github.com/truecharts/charts/compare/sourcegraph-4.1.11...sourcegraph-4.1.12) (2024-01-29) + +### Chore + + + +- update container image sourcegraph/server to v5.2.7[@e1746eb](https://github.com/e1746eb) by renovate ([#17683](https://github.com/truecharts/charts/issues/17683)) \ No newline at end of file diff --git a/stable/sourcegraph/4.1.11/app-readme.md b/stable/sourcegraph/4.1.12/app-readme.md similarity index 100% rename from stable/sourcegraph/4.1.11/app-readme.md rename to stable/sourcegraph/4.1.12/app-readme.md diff --git a/stable/sourcegraph/4.1.12/charts/common-17.2.29.tgz b/stable/sourcegraph/4.1.12/charts/common-17.2.29.tgz new file mode 100644 index 0000000000000000000000000000000000000000..32aa9351f147fbd4659b7948d068b57287f74904 GIT binary patch literal 98038 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 literal 0 HcmV?d00001 diff --git a/stable/sourcegraph/4.1.11/ix_values.yaml b/stable/sourcegraph/4.1.12/ix_values.yaml similarity index 90% rename from stable/sourcegraph/4.1.11/ix_values.yaml rename to stable/sourcegraph/4.1.12/ix_values.yaml index 3d75b149eb..1ceece2af0 100644 --- a/stable/sourcegraph/4.1.11/ix_values.yaml +++ b/stable/sourcegraph/4.1.12/ix_values.yaml @@ -1,7 +1,7 @@ image: pullPolicy: IfNotPresent repository: sourcegraph/server - tag: 5.2.6@sha256:ef447752f3136e38eb25527c5aeb4a31ce02d44a6697f4e756d9445f24b9d4bd + tag: 5.2.7@sha256:e1746ebd8b792bacc149e85b6070ce0d2042eb2f9858fe272d0a85a5f7245a60 persistence: applicationdatastoragepath: enabled: true diff --git a/stable/sourcegraph/4.1.11/questions.yaml b/stable/sourcegraph/4.1.12/questions.yaml similarity index 100% rename from stable/sourcegraph/4.1.11/questions.yaml rename to stable/sourcegraph/4.1.12/questions.yaml diff --git a/stable/sourcegraph/4.1.11/templates/common.yaml b/stable/sourcegraph/4.1.12/templates/common.yaml similarity index 100% rename from stable/sourcegraph/4.1.11/templates/common.yaml rename to stable/sourcegraph/4.1.12/templates/common.yaml diff --git a/stable/sourcegraph/4.1.12/values.yaml b/stable/sourcegraph/4.1.12/values.yaml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/stable/splunk/6.1.10/app-changelog.md b/stable/splunk/6.1.10/app-changelog.md deleted file mode 100644 index 6b78313e17..0000000000 --- a/stable/splunk/6.1.10/app-changelog.md +++ /dev/null @@ -1,9 +0,0 @@ - - -## [splunk-6.1.10](https://github.com/truecharts/charts/compare/splunk-6.1.9...splunk-6.1.10) (2024-01-26) - -### Chore - - - -- update container image common to v17.2.29[@d7c41a3](https://github.com/d7c41a3) by renovate ([#17545](https://github.com/truecharts/charts/issues/17545)) \ No newline at end of file diff --git a/stable/splunk/6.1.10/CHANGELOG.md b/stable/splunk/6.1.11/CHANGELOG.md similarity index 87% rename from stable/splunk/6.1.10/CHANGELOG.md rename to stable/splunk/6.1.11/CHANGELOG.md index 4e1b541358..f2e68ace52 100644 --- a/stable/splunk/6.1.10/CHANGELOG.md +++ b/stable/splunk/6.1.11/CHANGELOG.md @@ -7,6 +7,15 @@ title: Changelog +## [splunk-6.1.11](https://github.com/truecharts/charts/compare/splunk-6.1.10...splunk-6.1.11) (2024-01-29) + +### Chore + + + +- update container image splunk/splunk to v9.1.3[@816b835](https://github.com/816b835) by renovate ([#17684](https://github.com/truecharts/charts/issues/17684)) + + ## [splunk-6.1.10](https://github.com/truecharts/charts/compare/splunk-6.1.9...splunk-6.1.10) (2024-01-26) ### Chore @@ -88,12 +97,3 @@ title: Changelog - update container image common to v17.2.18[@085ba3c](https://github.com/085ba3c) by renovate ([#16732](https://github.com/truecharts/charts/issues/16732)) -- standardize ./img references ([#16704](https://github.com/truecharts/charts/issues/16704)) - -- lints some docs, uses front-matter instead of # h1, and fix list items in changelog ([#16589](https://github.com/truecharts/charts/issues/16589)) - - -## [splunk-6.1.2](https://github.com/truecharts/charts/compare/splunk-6.1.0...splunk-6.1.2) (2024-01-01) - -### Chore - diff --git a/stable/splunk/6.1.10/Chart.yaml b/stable/splunk/6.1.11/Chart.yaml similarity index 96% rename from stable/splunk/6.1.10/Chart.yaml rename to stable/splunk/6.1.11/Chart.yaml index 28b2434d73..0dec7ee063 100644 --- a/stable/splunk/6.1.10/Chart.yaml +++ b/stable/splunk/6.1.11/Chart.yaml @@ -7,7 +7,7 @@ annotations: truecharts.org/min_helm_version: "3.12" truecharts.org/train: stable apiVersion: v2 -appVersion: 9.1.2 +appVersion: 9.1.3 dependencies: - name: common version: 17.2.29 @@ -35,4 +35,4 @@ sources: - https://github.com/truecharts/charts/tree/master/charts/stable/splunk - https://hub.docker.com/r/splunk/splunk type: application -version: 6.1.10 +version: 6.1.11 diff --git a/stable/splunk/6.1.10/README.md b/stable/splunk/6.1.11/README.md similarity index 100% rename from stable/splunk/6.1.10/README.md rename to stable/splunk/6.1.11/README.md diff --git a/stable/splunk/6.1.11/app-changelog.md b/stable/splunk/6.1.11/app-changelog.md new file mode 100644 index 0000000000..6c6d878b45 --- /dev/null +++ b/stable/splunk/6.1.11/app-changelog.md @@ -0,0 +1,9 @@ + + +## [splunk-6.1.11](https://github.com/truecharts/charts/compare/splunk-6.1.10...splunk-6.1.11) (2024-01-29) + +### Chore + + + +- update container image splunk/splunk to v9.1.3[@816b835](https://github.com/816b835) by renovate ([#17684](https://github.com/truecharts/charts/issues/17684)) \ No newline at end of file diff --git a/stable/splunk/6.1.10/app-readme.md b/stable/splunk/6.1.11/app-readme.md similarity index 100% rename from stable/splunk/6.1.10/app-readme.md rename to stable/splunk/6.1.11/app-readme.md diff --git a/stable/splunk/6.1.11/charts/common-17.2.29.tgz b/stable/splunk/6.1.11/charts/common-17.2.29.tgz new file mode 100644 index 0000000000000000000000000000000000000000..32aa9351f147fbd4659b7948d068b57287f74904 GIT binary patch literal 98038 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 literal 0 HcmV?d00001 diff --git a/stable/splunk/6.1.10/ix_values.yaml b/stable/splunk/6.1.11/ix_values.yaml similarity index 93% rename from stable/splunk/6.1.10/ix_values.yaml rename to stable/splunk/6.1.11/ix_values.yaml index c3e22a0c4f..3deef7e279 100644 --- a/stable/splunk/6.1.10/ix_values.yaml +++ b/stable/splunk/6.1.11/ix_values.yaml @@ -1,7 +1,7 @@ image: pullPolicy: IfNotPresent repository: splunk/splunk - tag: 9.1.2@sha256:2a94cd38514f6f3b6bee2cd1df36ded17d7b8148ccb35e3be2a91258f6e5c46b + tag: 9.1.3@sha256:816b835372bcdecdfc52b812ff0d1568a0623baf78c8930f187d8308e40c1529 securityContext: container: diff --git a/stable/splunk/6.1.10/questions.yaml b/stable/splunk/6.1.11/questions.yaml similarity index 100% rename from stable/splunk/6.1.10/questions.yaml rename to stable/splunk/6.1.11/questions.yaml diff --git a/stable/splunk/6.1.11/templates/NOTES.txt b/stable/splunk/6.1.11/templates/NOTES.txt new file mode 100644 index 0000000000..efcb74cb77 --- /dev/null +++ b/stable/splunk/6.1.11/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/stable/splunk/6.1.10/templates/_config.tpl b/stable/splunk/6.1.11/templates/_config.tpl similarity index 100% rename from stable/splunk/6.1.10/templates/_config.tpl rename to stable/splunk/6.1.11/templates/_config.tpl diff --git a/stable/splunk/6.1.10/templates/common.yaml b/stable/splunk/6.1.11/templates/common.yaml similarity index 100% rename from stable/splunk/6.1.10/templates/common.yaml rename to stable/splunk/6.1.11/templates/common.yaml diff --git a/stable/splunk/6.1.11/values.yaml b/stable/splunk/6.1.11/values.yaml new file mode 100644 index 0000000000..e69de29bb2