From 5a1deba2b3f23f9e2e72ca42be47d618ade52a0f Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Sat, 22 Jul 2023 12:17:46 +0000 Subject: [PATCH] Commit new Chart releases for TrueCharts Signed-off-by: TrueCharts-Bot --- incubator/mealie/16.0.0/CHANGELOG.md | 87 + incubator/mealie/16.0.0/Chart.yaml | 26 + incubator/mealie/16.0.0/LICENSE | 106 + incubator/mealie/16.0.0/README.md | 27 + incubator/mealie/16.0.0/app-changelog.md | 9 + incubator/mealie/16.0.0/app-readme.md | 8 + .../mealie/16.0.0/charts/common-13.2.0.tgz | Bin 0 -> 133368 bytes incubator/mealie/16.0.0/ix_values.yaml | 159 ++ incubator/mealie/16.0.0/questions.yaml | 2412 +++++++++++++++++ incubator/mealie/16.0.0/templates/NOTES.txt | 1 + .../mealie/16.0.0/templates/_secrets.tpl | 99 + incubator/mealie/16.0.0/templates/common.yaml | 11 + incubator/mealie/16.0.0/values.yaml | 0 incubator/mealie/item.yaml | 1 + 14 files changed, 2946 insertions(+) create mode 100644 incubator/mealie/16.0.0/CHANGELOG.md create mode 100644 incubator/mealie/16.0.0/Chart.yaml create mode 100644 incubator/mealie/16.0.0/LICENSE create mode 100644 incubator/mealie/16.0.0/README.md create mode 100644 incubator/mealie/16.0.0/app-changelog.md create mode 100644 incubator/mealie/16.0.0/app-readme.md create mode 100644 incubator/mealie/16.0.0/charts/common-13.2.0.tgz create mode 100644 incubator/mealie/16.0.0/ix_values.yaml create mode 100644 incubator/mealie/16.0.0/questions.yaml create mode 100644 incubator/mealie/16.0.0/templates/NOTES.txt create mode 100644 incubator/mealie/16.0.0/templates/_secrets.tpl create mode 100644 incubator/mealie/16.0.0/templates/common.yaml create mode 100644 incubator/mealie/16.0.0/values.yaml diff --git a/incubator/mealie/16.0.0/CHANGELOG.md b/incubator/mealie/16.0.0/CHANGELOG.md new file mode 100644 index 0000000000..13feebbd00 --- /dev/null +++ b/incubator/mealie/16.0.0/CHANGELOG.md @@ -0,0 +1,87 @@ +**Important:** +*for the complete changelog, please refer to the website* + + + + +## [mealie-16.0.0](https://github.com/truecharts/charts/compare/mealie-15.0.0...mealie-16.0.0) (2023-07-22) + +### Feat + +- hide advanced ingress options behind checbox ([#9203](https://github.com/truecharts/charts/issues/9203)) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + + + + +## [mealie-15.0.0](https://github.com/truecharts/charts/compare/mealie-14.0.22...mealie-15.0.0) (2023-05-24) + diff --git a/incubator/mealie/16.0.0/Chart.yaml b/incubator/mealie/16.0.0/Chart.yaml new file mode 100644 index 0000000000..ca634f1bc4 --- /dev/null +++ b/incubator/mealie/16.0.0/Chart.yaml @@ -0,0 +1,26 @@ +apiVersion: v2 +appVersion: "1.0.0beta" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 13.2.0 +description: Mealie is a self hosted recipe manager and meal planner with a RestAPI backend +home: https://truecharts.org/charts/incubator/mealie +icon: https://truecharts.org/img/hotlink-ok/chart-icons/mealie.png +keywords: + - grocy +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: mealie +sources: + - https://github.com/truecharts/charts/tree/master/charts/incubator/mealie + - https://github.com/hay-kot/mealie +version: 16.0.0 +annotations: + truecharts.org/catagories: | + - utilities + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/incubator/mealie/16.0.0/LICENSE b/incubator/mealie/16.0.0/LICENSE new file mode 100644 index 0000000000..33a8cbb23f --- /dev/null +++ b/incubator/mealie/16.0.0/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/incubator/mealie/16.0.0/README.md b/incubator/mealie/16.0.0/README.md new file mode 100644 index 0000000000..83229a6026 --- /dev/null +++ b/incubator/mealie/16.0.0/README.md @@ -0,0 +1,27 @@ +# 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/incubator/) + +**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/incubator/mealie/16.0.0/app-changelog.md b/incubator/mealie/16.0.0/app-changelog.md new file mode 100644 index 0000000000..5f6708e87b --- /dev/null +++ b/incubator/mealie/16.0.0/app-changelog.md @@ -0,0 +1,9 @@ + + +## [mealie-16.0.0](https://github.com/truecharts/charts/compare/mealie-15.0.0...mealie-16.0.0) (2023-07-22) + +### Feat + +- hide advanced ingress options behind checbox ([#9203](https://github.com/truecharts/charts/issues/9203)) + + \ No newline at end of file diff --git a/incubator/mealie/16.0.0/app-readme.md b/incubator/mealie/16.0.0/app-readme.md new file mode 100644 index 0000000000..d528f5bd5d --- /dev/null +++ b/incubator/mealie/16.0.0/app-readme.md @@ -0,0 +1,8 @@ +Mealie is a self hosted recipe manager and meal planner with a RestAPI backend + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/incubator/mealie](https://truecharts.org/charts/incubator/mealie) + +--- + +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/incubator/mealie/16.0.0/charts/common-13.2.0.tgz b/incubator/mealie/16.0.0/charts/common-13.2.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..5c0fecd087839b011aab769e3785f251e9224747 GIT binary patch literal 133368 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%0DkmEd$c7@?)r|p58Dx2UYl2r_<{O7ABbDx zWnMJKRoeQstF|xWGsvawmc9N)wVn52fo;~;1&cXVtTmhk6}8=Ij?01?x?NObL;mz_ z;?ua?z%MIr8g4rG1x;|$H9wW=9Je8u({XV0*y**69>&}~$7P`=U11u_5nH}Z37K*dl> zyZ3%b-{zU(V>_~6KSW{1CrGOAyYt6ioQXDr|EG^s!;Pwq=V#~PX|;G%JlD7Qe0ooN z{jamjme>H8>;E4fl>Ps;{$I&c%Kv<1JHX0G{KG^5YR3G@h5%N#3t%(aItI`x22e+` zbr4|vJi^mn|C^VK2La~k{}=l&eEq+>yWam_$ph;Bdp))2D=cX6*d{>2=>+qctqM0l zpe$08p$x-LfI5$9N}*bn$!xN+nl{E*T&ea_e)~78$e&-sneNd2*#Q5VAvPr(8DwnO z9LFPqHex&>+h`;ILMnBAx*&gNX$Oh%uz*K}t~Ql}F0@ll0rQ3D@WIvPwlXhb#$88w zbgeDrF8F-iJojw=t<^aia8tVKbngAK`N-`HW@kysx%afZ@U*<{%*CO_HM#c0TKC}O zU+g?bCvoUZgJ!d08Y(8jeB%y&=Q&h*lb@zz!ig$5#t9B*2%Xq# zfhGG6(-@IB<+Fs*IE6deRQ1aN&&6TAq6UuX<0$GnzE!nlpgyKCO}nVy`g@!t(JXK9 zM_sH>@YJt=N%6;#0CU#=i$nkZ&%LAF{q_0pl{~Qi-!dFZb0tDT)nO1Vm%Lh)t|bl? z*@8@@Yyy|^4rxThHo`)K3K5O9mEND>Ni_cef<~%OKBOGqCQ;X^rm*Yu|2h^Kx600< zgm8U9v_Mt`4lGSHz|}KBYW4Zs$?U4M0Q zx=;^%fP)rrUw=pmk8y;~={|0nvz) ztE+FX-!3wlvTY?2pP=7TYyV3R?U4cibL{_v!=snJ|9`aJ|6k4HgwJsiKexBo+c^Wu zrFZOM!bb*#1}hg-suJ!dEY`n;=9ZGShH)u+u=5;UVJ--Ys7O^WIDz}GQ&zDf&=_g} z5I%J6R^0N8oJyR9M%`p2(0IuBMBkbsP*D}8y=wsg15=XF?OrO%5s3-MDO`_|O1=Jb zgc2;oJ>#K(h&>@;8)qgLnQ=1es^X88{csXev0N7+k;Er)K#AxBoW63l7;oxvf;q+E z;1T-NklOXi;t_kCUKONPy#^5t?#3(=X%Xfs+;Y@<&YS$q|ripU#6HbIwz)N&F1=uH1P~avFOXTs%gHhXK(veA_z^bmffndtsaiwU0uw_P0I6-3P7Xl zV>(S@wdL1qiQqJe+h7)xRE!x*7bcx)xG3RFyGG=B)p{qum4l{?CJ>_4;4Q zV?{;Ojfd8>>)dBisOG_}wO3dfm@$bLJI~SA#u$z9goMzoKv-0o0dAI+{M62{g1@~) zW%$U+nX)ooXP6_8UBwJ`R*5hxgUas6oIq*EwWn-(HrM2;+9F@e$rbO57u&X<3bKa;9>2kk0 zQC}gGBlhLA_vN%}{nP?l9V(S{2_h_n%Y;@PYPgt6&svT`*ZTTgh)mkril0h9pzfG~ zepJ81AE-L9`V-BoZjk?RGFpZGx3_zE;LHD`-F5!YYM!$EkCV~k2!04JHAwt88IiUk zUm_)CbuRPe3+H4DsY>BR<>JfGva7$YIp&$4)1Wcz!FN?NqfaVCD#`OqoiBZFc$fm(Hzk=pt~v0NI9$3#>8Z= zdL;J&0fRI`a#?5&^&G zkof~#7H@SKL&yKS&<)|>3JX|}-L4%l+z1B=CsWEY_%UMaE=y2%y4OWrljgJ0za|mE zg7ow21}*;oQuH#R3`CcQ(H3&`595}QwEDH#vdEv4Vn0`lD#b}JRnPdgAoeYqZc6wnwY|e>`bqQW!+%0Db;v*5+!4NkxkIiKH93E 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 literal 0 HcmV?d00001 diff --git a/incubator/mealie/16.0.0/ix_values.yaml b/incubator/mealie/16.0.0/ix_values.yaml new file mode 100644 index 0000000000..cf5c5c4291 --- /dev/null +++ b/incubator/mealie/16.0.0/ix_values.yaml @@ -0,0 +1,159 @@ +image: + repository: tccr.io/truecharts/mealie-frontend + tag: latest@sha256:545440da5702172f8aa53c98f7136e39e6143ab18299a5aeccc404748ddd1245 + pullPolicy: IfNotPresent +apiImage: + repository: tccr.io/truecharts/mealie-api + tag: latest@sha256:75250abbd9641bdc044961c58aa1f297245be450c3e5abd25aceac38b12ad72c + pullPolicy: IfNotPresent + +mealie: + frontend: + theme: + light_primary: "#E58325" + light_accent: "#007A99" + light_secondary: "#973542" + light_success: "#43A047" + light_info: "#1976D2" + light_warning: "#FF6D00" + light_error: "#EF5350" + dark_primary: "#E58325" + dark_accent: "#007A99" + dark_secondary: "#973542" + dark_success: "#43A047" + dark_info: "#1976D2" + dark_warning: "#FF6D00" + dark_error: "#EF5350" + api: + general: + allow_signup: true + default_group: Home + default_email: changeme@email.com + base_url: "" + token_time: 48 + security: + max_login_attempts: 5 + user_lockout_time: 24 + smtp: + user: "" + password: "" + host: "" + port: 587 + from_name: Mealie + from_email: "" + # TLS | SSL | NONE + auth_strategy: TLS + webworkers: + workers_per_core: 1 + max_workers: 1 + web_concurrency: 1 + ldap: + auth_enabled: false + server_url: "" + tls_insecure: false + enable_starttls: false + tls_cacertfile: "" + base_dn: "" + query_bind: "" + query_password: "" + user_filter: "" + admin_filter: "" + id_attribute: uid + user_attribute: name + mail_attribute: mail + +workload: + main: + podSpec: + containers: + main: + securityContext: + capabilities: + add: + - NET_BIND_SERVICE + probes: + liveness: + path: "/" + type: http + readiness: + path: "/" + type: http + startup: + path: "/" + type: http + envFrom: + - secretRef: + name: frontend + api: + enabled: true + type: Deployment + strategy: RollingUpdate + replicas: 1 + podSpec: + containers: + api: + primary: true + enabled: true + imageSelector: apiImage + probes: + liveness: + path: /api/app/about + type: http + port: "{{ .Values.service.api.ports.api.port }}" + readiness: + path: /api/app/about + type: http + port: "{{ .Values.service.api.ports.api.port }}" + startup: + type: tcp + port: "{{ .Values.service.api.ports.api.port }}" + envFrom: + - secretRef: + name: api + +securityContext: + container: + runAsNonRoot: false + readOnlyRootFilesystem: false + runAsUser: 0 + runAsGroup: 0 + +service: + main: + ports: + main: + port: 10018 + protocol: http + targetPort: 3000 + api: + enabled: true + type: ClusterIP + targetSelector: api + ports: + api: + enabled: true + protocol: http + port: 10019 + targetSelector: api + +persistence: + data: + enabled: true + targetSelector: + main: + main: + mountPath: /app/data + readOnly: true + api: + api: + mountPath: /app/data + +cnpg: + main: + enabled: true + user: mealie + database: mealie + +portal: + open: + enabled: true diff --git a/incubator/mealie/16.0.0/questions.yaml b/incubator/mealie/16.0.0/questions.yaml new file mode 100644 index 0000000000..791e71efa6 --- /dev/null +++ b/incubator/mealie/16.0.0/questions.yaml @@ -0,0 +1,2412 @@ +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: mealie + group: App Configuration + label: Mealie Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: frontend + label: Mealie Frontend Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: theme + label: Theme + schema: + additional_attrs: true + type: dict + attrs: + - variable: light_primary + label: Light Primary + description: Light Theme Config Variable + schema: + type: string + default: "#E58325" + required: true + - variable: light_accent + label: Light Accent + description: Light Theme Config Variable + schema: + type: string + default: "#007A99" + required: true + - variable: light_secondary + label: Light Secondary + description: Light Theme Config Variable + schema: + type: string + default: "#973542" + required: true + - variable: light_success + label: Light Success + description: Light Theme Config Variable + schema: + type: string + default: "#43A047" + required: true + - variable: light_info + label: Light Info + description: Light Theme Config Variable + schema: + type: string + default: "#1976D2" + required: true + - variable: light_warning + label: Light Warning + description: Light Theme Config Variable + schema: + type: string + default: "#FF6D00" + required: true + - variable: light_error + label: Light Error + description: Light Theme Config Variable + schema: + type: string + default: "#EF5350" + required: true + - variable: dark_primary + label: Dark Primary + description: Dark Theme Config Variable + schema: + type: string + default: "#E58325" + required: true + - variable: dark_accent + label: Dark Accent + description: Dark Theme Config Variable + schema: + type: string + default: "#007A99" + required: true + - variable: dark_secondary + label: Dark Secondary + description: Dark Theme Config Variable + schema: + type: string + default: "#973542" + required: true + - variable: dark_success + label: Dark Success + description: Dark Theme Config Variable + schema: + type: string + default: "#43A047" + required: true + - variable: dark_info + label: Dark Info + description: Dark Theme Config Variable + schema: + type: string + default: "#1976D2" + required: true + - variable: dark_warning + label: Dark Warning + description: Dark Theme Config Variable + schema: + type: string + default: "#FF6D00" + required: true + - variable: dark_error + label: Dark Error + description: Dark Theme Config Variable + schema: + type: string + default: "#EF5350" + required: true + - variable: api + label: Mealie API Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: general + label: General + schema: + additional_attrs: true + type: dict + attrs: + - variable: base_url + label: Base URL + description: Used for Notifications + schema: + type: string + default: "" + - variable: allow_signup + label: Allow Sign up + description: Allow user sign-up without token + schema: + type: boolean + default: true + - variable: default_group + label: Default Group + description: The default group for users + schema: + type: string + default: Home + required: true + - variable: default_email + label: Default Email + description: The default username for the superuser + schema: + type: string + default: changeme@email.com + required: true + - variable: token_time + label: Token Time + description: The time in hours that a login/auth token is valid + schema: + type: int + default: 48 + required: true + - variable: security + label: Security + schema: + additional_attrs: true + type: dict + attrs: + - variable: max_login_attempts + label: Max Login Attempts + description: Maximum times a user can provide an invalid password before their account is locked + schema: + type: int + default: 5 + required: true + - variable: user_lockout_time + label: User Lockout Time + description: Time in hours for how long a users account is locked + schema: + type: int + default: 24 + required: true + - variable: webworkers + label: Web Workers + schema: + additional_attrs: true + type: dict + attrs: + - variable: workers_per_core + label: Workers Per Core + description: Set the number of workers to the number of CPU cores multiplied by this value. + schema: + type: int + default: 1 + required: true + - variable: max_workers + label: Max Workers + description: Set the maximum number of workers to use. Default is not set meaning unlimited. + schema: + type: int + default: 1 + required: true + - variable: web_concurrency + label: Web Concurrency + description: Override the automatic definition of number of workers. + schema: + type: int + default: 1 + required: true + - variable: smtp + label: SMTP + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: Host + description: Mail Host + schema: + type: string + default: "" + - variable: port + label: Port + description: Mail Port + schema: + type: int + show_if: [["host", "!=", ""]] + default: 587 + required: true + - variable: user + label: User + description: Mail User + schema: + type: string + show_if: [["host", "!=", ""]] + required: true + default: "" + - variable: password + label: Password + description: Mail Password + schema: + type: string + show_if: [["host", "!=", ""]] + private: true + required: true + default: "" + - variable: from_name + label: From Name + description: Mail From Name + schema: + type: string + show_if: [["host", "!=", ""]] + required: true + default: Mealie + - variable: from_email + label: From Email + description: Mail From Email + schema: + type: string + required: true + default: "" + - variable: auth_strategy + label: Auth Strategy + description: Mail Auth Strategy + schema: + type: string + show_if: [["host", "!=", ""]] + required: true + default: "TLS" + enum: + - value: TLS + description: TLS + - value: SSL + description: SSL + - value: NONE + description: NONE + - variable: ldap + label: LDAP + schema: + additional_attrs: true + type: dict + attrs: + - variable: auth_enabled + label: Auth Enabled + description: Authenticate via an external LDAP server in addition to built-in Mealie auth + schema: + type: boolean + default: false + - variable: server_url + label: Server URL + description: LDAP server URL + schema: + type: string + default: "" + - variable: tls_insecure + label: TLS Insecure + description: Do not verify server certificate when using secure LDAP + schema: + type: boolean + default: false + - variable: enable_starttls + label: Enable StartTLS + description: Use STARTTLS to connect to the server + schema: + type: boolean + default: false + - variable: tls_cacertfile + label: TLS CA Cert File + description: File path to Certificate Authority used to verify server certificate + schema: + type: string + default: "" + - variable: base_dn + label: Base DN + description: Starting point when searching for users authentication. + schema: + type: string + default: "" + - variable: query_bind + label: Query Bind + description: Optional bind user for LDAP search queries + schema: + type: string + default: "" + - variable: query_password + label: Query Password + description: Optional password for the bind user used + schema: + type: string + default: "" + - variable: user_filter + label: User Filter + description: Optional LDAP filter to narrow down eligible users + schema: + type: string + default: "" + - variable: admin_filter + label: Admin Filter + description: Optional LDAP filter, which tells Mealie the LDAP user is an admin + schema: + type: string + default: "" + - variable: id_attribute + label: ID Attribute + description: The LDAP attribute that maps to the user's id + schema: + type: string + default: uid + - variable: user_attribute + label: User Attribute + description: The LDAP attribute that maps to the user's name + schema: + type: string + default: name + - variable: mail_attribute + label: Mail Attribute + description: The LDAP attribute that maps to the user's email + schema: + type: string + default: mail + + - 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: 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: 10018 + required: true + - variable: api + label: API Service + description: The API Service + 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: ClusterIP + 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: api + label: API 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: 10019 + 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 + - 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: 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: 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: 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: ingress + label: "" + group: Ingress + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: Main Ingress + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: certificateIssuer + label: Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates. Cannot be used combined with tls option below' + schema: + type: string + default: "" + - variable: middlewares + label: Traefik Middlewares + description: Add previously created Traefik Middlewares to this Ingress + schema: + type: list + default: [] + items: + - variable: name + label: Name + schema: + type: string + default: "" + required: true + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: entrypoint + label: (Advanced) Traefik Entrypoint + description: Entrypoint used by Traefik when using Traefik as Ingress Provider + schema: + type: string + default: websecure + show_if: [["advanced", "=", true]] + required: true + - 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: scaleCert + label: Use TrueNAS SCALE Certificate (Deprecated) + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - 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: service + label: Linked Service + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Service Name + schema: + type: string + default: "" + - variable: port + label: Service Port + schema: + type: int + - variable: clusterIssuer + label: clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates. Cannot be used combined with tls option below' + schema: + type: string + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + default: [] + show_if: [["clusterIssuer", "=", ""]] + 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: clusterIssuer + 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: [["clusterIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + type: string + show_if: [["clusterIssuer", "=", ""]] + default: "" + - variable: entrypoint + label: Traefik Entrypoint + description: Entrypoint used by Traefik when using Traefik as Ingress Provider + schema: + type: string + default: websecure + required: true + - variable: middlewares + label: Traefik Middlewares + description: Add previously created Traefik Middlewares to this Ingress + schema: + type: list + default: [] + items: + - variable: name + label: Name + schema: + type: string + default: "" + required: true + + - variable: 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: 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/incubator/mealie/16.0.0/templates/NOTES.txt b/incubator/mealie/16.0.0/templates/NOTES.txt new file mode 100644 index 0000000000..efcb74cb77 --- /dev/null +++ b/incubator/mealie/16.0.0/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/incubator/mealie/16.0.0/templates/_secrets.tpl b/incubator/mealie/16.0.0/templates/_secrets.tpl new file mode 100644 index 0000000000..425552b890 --- /dev/null +++ b/incubator/mealie/16.0.0/templates/_secrets.tpl @@ -0,0 +1,99 @@ +{{/* Define the secrets */}} +{{- define "mealie.secrets" -}} +{{- $fullname := (include "tc.v1.common.lib.chart.names.fullname" $) -}} +{{- $api := .Values.mealie.api -}} +{{- $frontend := .Values.mealie.frontend }} + +frontend: + enabled: true + data: + {{/* Frontend */}} + API_URL: {{ printf "http://%v-api:%v" $fullname .Values.service.api.ports.api.port }} + THEME_LIGHT_PRIMARY: {{ $frontend.theme.light_primary | default "#E58325" | quote }} + THEME_LIGHT_ACCENT: {{ $frontend.theme.light_accent | default "#007A99" | quote }} + THEME_LIGHT_SECONDARY: {{ $frontend.theme.light_secondary | default "#973542" | quote }} + THEME_LIGHT_SUCCESS: {{ $frontend.theme.light_success | default "#43A047" | quote }} + THEME_LIGHT_INFO: {{ $frontend.theme.light_info | default "#1976D2" | quote }} + THEME_LIGHT_WARNING: {{ $frontend.theme.light_warning | default "#FF6D00" | quote }} + THEME_LIGHT_ERROR: {{ $frontend.theme.light_error | default "#EF5350" | quote }} + THEME_DARK_PRIMARY: {{ $frontend.theme.dark_primary | default "#E58325" | quote }} + THEME_DARK_ACCENT: {{ $frontend.theme.dark_accent | default "#007A99" | quote }} + THEME_DARK_SECONDARY: {{ $frontend.theme.dark_secondary | default "#973542" | quote }} + THEME_DARK_SUCCESS: {{ $frontend.theme.dark_success | default "#43A047" | quote }} + THEME_DARK_INFO: {{ $frontend.theme.dark_info | default "#1976D2" | quote }} + THEME_DARK_WARNING: {{ $frontend.theme.dark_warning | default "#FF6D00" | quote }} + THEME_DARK_ERROR: {{ $frontend.theme.dark_error | default "#EF5350" | quote }} + +api: + enabled: true + data: + API_PORT: {{ .Values.service.api.ports.api.port | quote }} + API_DOCS: "true" + {{/* Database */}} + DB_ENGINE: "postgres" + POSTGRES_PORT: "5432" + POSTGRES_USER: {{ .Values.cnpg.main.user }} + POSTGRES_PASSWORD: {{ .Values.cnpg.main.creds.password | trimAll "\"" }} + POSTGRES_DB: {{ .Values.cnpg.main.database }} + POSTGRES_SERVER: {{ .Values.cnpg.main.creds.host }} + {{/* User Defined */}} + {{/* General */}} + ALLOW_SIGNUP: {{ $api.general.allow_signup | quote }} + DEFAULT_GROUP: {{ $api.general.default_group }} + DEFAULT_EMAIL: {{ $api.general.default_email }} + BASE_URL: {{ $api.general.base_url }} + TOKEN_TIME: {{ $api.general.token_time | quote }} + {{/* Security */}} + SECURITY_MAX_LOGIN_ATTEMPTS: {{ $api.security.max_login_attempts | quote }} + SECURITY_USER_LOCKOUT_TIME: {{ $api.security.user_lockout_time | quote }} + {{/* SMTP */}} + {{- if $api.smtp.host }} + SMTP_PORT: {{ $api.smtp.port | quote }} + SMTP_HOST: {{ $api.smtp.host | quote }} + SMTP_USER: {{ $api.smtp.user | quote }} + SMTP_PASSWORD: {{ $api.smtp.password | quote }} + SMTP_FROM_NAME: {{ $api.smtp.from_name | quote }} + SMTP_AUTH_STRATEGY: {{ $api.smtp.auth_strategy | quote }} + SMTP_FROM_EMAIL: {{ $api.smtp.from_email | quote }} + {{- end }} + {{/* Workers */}} + WORKERS_PER_CORE: {{ $api.webworkers.workers_per_core | quote }} + MAX_WORKERS: {{ $api.webworkers.max_workers | quote }} + WEB_CONCURRENCY: {{ $api.webworkers.web_concurrency | quote }} + {{/* LDAP */}} + {{- if $api.ldap.auth_enabled }} + LDAP_AUTH_ENABLED: {{ $api.ldap.auth_enabled | quote }} + {{- with $api.ldap.server_url }} + LDAP_SERVER_URL: {{ . }} + {{- end }} + LDAP_TLS_INSECURE: {{ $api.ldap.tls_insecure | quote }} + LDAP_ENABLE_STARTTLS: {{ $api.ldap.enable_starttls | quote }} + {{- with $api.ldap.tls_cacertfile }} + LDAP_TLS_CACERTFILE: {{ . | quote }} + {{- end -}} + {{- with $api.ldap.base_dn }} + LDAP_BASE_DN: {{ . | quote }} + {{- end -}} + {{- with $api.ldap.query_bind }} + LDAP_QUERY_BIND: {{ . | quote }} + {{- end -}} + {{- with $api.ldap.query_password }} + LDAP_QUERY_PASSWORD: {{ . | quote }} + {{- end -}} + {{- with $api.ldap.user_filter }} + LDAP_USER_FILTER: {{ . | quote }} + {{- end -}} + {{- with $api.ldap.admin_filter }} + LDAP_ADMIN_FILTER: {{ . | quote }} + {{- end -}} + {{- with $api.ldap.id_attribute }} + LDAP_ID_ATTRIBUTE: {{ . | quote }} + {{- end -}} + {{- with $api.ldap.name_attribute }} + LDAP_NAME_ATTRIBUTE: {{ . | quote }} + {{- end -}} + {{- with $api.ldap.mail_attribute }} + LDAP_MAIL_ATTRIBUTE: {{ . | quote }} + {{- end -}} + {{- end -}} +{{- end -}} diff --git a/incubator/mealie/16.0.0/templates/common.yaml b/incubator/mealie/16.0.0/templates/common.yaml new file mode 100644 index 0000000000..fda2cdae01 --- /dev/null +++ b/incubator/mealie/16.0.0/templates/common.yaml @@ -0,0 +1,11 @@ +{{/* Make sure all variables are set properly */}} +{{- include "tc.v1.common.loader.init" . }} + +{{/* Render secrets for mealie */}} +{{- $secrets := include "mealie.secrets" . | fromYaml -}} +{{- if $secrets -}} + {{- $_ := mustMergeOverwrite .Values.secret $secrets -}} +{{- end -}} + +{{/* Render the templates */}} +{{ include "tc.v1.common.loader.apply" . }} diff --git a/incubator/mealie/16.0.0/values.yaml b/incubator/mealie/16.0.0/values.yaml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/incubator/mealie/item.yaml b/incubator/mealie/item.yaml index 6bf34444ff..aada965677 100644 --- a/incubator/mealie/item.yaml +++ b/incubator/mealie/item.yaml @@ -2,3 +2,4 @@ icon_url: https://truecharts.org/img/hotlink-ok/chart-icons/mealie.png categories: - utilities +screenshots: []