From 1ae36aa4788881b9ac4f3586b89d410c02f6e837 Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Fri, 22 Dec 2023 15:13:04 +0000 Subject: [PATCH] Commit new Chart releases for TrueCharts Signed-off-by: TrueCharts-Bot --- stable/sonarr/17.0.6/CHANGELOG.md | 99 + stable/sonarr/17.0.6/Chart.yaml | 38 + stable/sonarr/17.0.6/README.md | 27 + stable/sonarr/17.0.6/app-changelog.md | 9 + stable/sonarr/17.0.6/app-readme.md | 8 + stable/sonarr/17.0.6/charts/common-16.2.9.tgz | Bin 0 -> 95855 bytes stable/sonarr/17.0.6/ix_values.yaml | 106 + stable/sonarr/17.0.6/questions.yaml | 2809 +++++++++++++++++ stable/sonarr/17.0.6/templates/NOTES.txt | 1 + stable/sonarr/17.0.6/templates/common.yaml | 11 + stable/sonarr/17.0.6/values.yaml | 0 11 files changed, 3108 insertions(+) create mode 100644 stable/sonarr/17.0.6/CHANGELOG.md create mode 100644 stable/sonarr/17.0.6/Chart.yaml create mode 100644 stable/sonarr/17.0.6/README.md create mode 100644 stable/sonarr/17.0.6/app-changelog.md create mode 100644 stable/sonarr/17.0.6/app-readme.md create mode 100644 stable/sonarr/17.0.6/charts/common-16.2.9.tgz create mode 100644 stable/sonarr/17.0.6/ix_values.yaml create mode 100644 stable/sonarr/17.0.6/questions.yaml create mode 100644 stable/sonarr/17.0.6/templates/NOTES.txt create mode 100644 stable/sonarr/17.0.6/templates/common.yaml create mode 100644 stable/sonarr/17.0.6/values.yaml diff --git a/stable/sonarr/17.0.6/CHANGELOG.md b/stable/sonarr/17.0.6/CHANGELOG.md new file mode 100644 index 00000000000..311517ed9ff --- /dev/null +++ b/stable/sonarr/17.0.6/CHANGELOG.md @@ -0,0 +1,99 @@ +**Important:** +*for the complete changelog, please refer to the website* + + + + +## [sonarr-17.0.6](https://github.com/truecharts/charts/compare/sonarr-17.0.5...sonarr-17.0.6) (2023-12-22) + +### Fix + +- remove postgres ([#16350](https://github.com/truecharts/charts/issues/16350)) + + + + +## [sonarr-17.0.5](https://github.com/truecharts/charts/compare/sonarr-17.0.4...sonarr-17.0.5) (2023-12-22) + +### Fix + +- expose custom options for homepage integration + + + + +## [sonarr-17.0.4](https://github.com/truecharts/charts/compare/sonarr-17.0.3...sonarr-17.0.4) (2023-12-21) + +### Fix + +- bump to release middleware fix + + + + +## [sonarr-17.0.3](https://github.com/truecharts/charts/compare/sonarr-17.0.2...sonarr-17.0.3) (2023-12-21) + +### Chore + +- bump everything to ensure patches are applied globally + + ### Fix + +- ensure the cnpg GUI is included on CNPG apps + + + + +## [sonarr-17.0.2](https://github.com/truecharts/charts/compare/sonarr-17.0.1...sonarr-17.0.2) (2023-12-21) + +### Chore + +- update helm general non-major by renovate ([#16341](https://github.com/truecharts/charts/issues/16341)) + + + + +## [sonarr-17.0.1](https://github.com/truecharts/charts/compare/sonarr-17.0.0...sonarr-17.0.1) (2023-12-20) + +### Chore + +- bump patch versions on all charts for new GUI release + + + + +## [sonarr-17.0.0](https://github.com/truecharts/charts/compare/sonarr-16.0.18...sonarr-17.0.0) (2023-12-20) + +### Chore + +- update helm general major by renovate (major) ([#14631](https://github.com/truecharts/charts/issues/14631)) + + + + +## [sonarr-16.0.18](https://github.com/truecharts/charts/compare/sonarr-16.0.17...sonarr-16.0.18) (2023-12-20) + +### Chore + +- Bump everything to force min/max scale version update + + + + +## [sonarr-16.0.17](https://github.com/truecharts/charts/compare/sonarr-16.0.15...sonarr-16.0.17) (2023-12-16) + +### Chore + +- fix move mistake and cleanup metadata + - update helm general non-major ([#14784](https://github.com/truecharts/charts/issues/14784)) + + + + +## [sonarr-16.0.17](https://github.com/truecharts/charts/compare/sonarr-16.0.15...sonarr-16.0.17) (2023-12-16) + +### Chore + +- fix move mistake and cleanup metadata + - update helm general non-major ([#14784](https://github.com/truecharts/charts/issues/14784)) + diff --git a/stable/sonarr/17.0.6/Chart.yaml b/stable/sonarr/17.0.6/Chart.yaml new file mode 100644 index 00000000000..0336afcb814 --- /dev/null +++ b/stable/sonarr/17.0.6/Chart.yaml @@ -0,0 +1,38 @@ +kubeVersion: ">=1.24.0-0" +apiVersion: v2 +name: sonarr +version: 17.0.6 +appVersion: 3.0.10.1567 +description: Smart PVR for newsgroup and bittorrent users +home: https://truecharts.org/charts/stable/sonarr +icon: https://truecharts.org/img/hotlink-ok/chart-icons/sonarr.png +deprecated: false +sources: + - https://github.com/Sonarr/Sonarr + - https://github.com/truecharts/charts/tree/master/charts/stable/sonarr + - https://ghcr.io/onedr0p/exportarr +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +keywords: + - sonarr + - torrent + - usenet +dependencies: + - name: common + version: 16.2.9 + repository: https://library-charts.truecharts.org + condition: "" + alias: "" + tags: [] + import-values: [] +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.13" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: stable +type: application diff --git a/stable/sonarr/17.0.6/README.md b/stable/sonarr/17.0.6/README.md new file mode 100644 index 00000000000..988336be77f --- /dev/null +++ b/stable/sonarr/17.0.6/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/stable/sonarr) + +**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/sonarr/17.0.6/app-changelog.md b/stable/sonarr/17.0.6/app-changelog.md new file mode 100644 index 00000000000..9d841700ff3 --- /dev/null +++ b/stable/sonarr/17.0.6/app-changelog.md @@ -0,0 +1,9 @@ + + +## [sonarr-17.0.6](https://github.com/truecharts/charts/compare/sonarr-17.0.5...sonarr-17.0.6) (2023-12-22) + +### Fix + +- remove postgres ([#16350](https://github.com/truecharts/charts/issues/16350)) + + \ No newline at end of file diff --git a/stable/sonarr/17.0.6/app-readme.md b/stable/sonarr/17.0.6/app-readme.md new file mode 100644 index 00000000000..ec61484a6bd --- /dev/null +++ b/stable/sonarr/17.0.6/app-readme.md @@ -0,0 +1,8 @@ +Smart PVR for newsgroup and bittorrent users + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/sonarr](https://truecharts.org/charts/stable/sonarr) + +--- + +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/sonarr/17.0.6/charts/common-16.2.9.tgz b/stable/sonarr/17.0.6/charts/common-16.2.9.tgz new file mode 100644 index 0000000000000000000000000000000000000000..c1db66f45200b3e3145055a639076ef656467e35 GIT binary patch literal 95855 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 literal 0 HcmV?d00001 diff --git a/stable/sonarr/17.0.6/ix_values.yaml b/stable/sonarr/17.0.6/ix_values.yaml new file mode 100644 index 00000000000..01220518b73 --- /dev/null +++ b/stable/sonarr/17.0.6/ix_values.yaml @@ -0,0 +1,106 @@ +image: + repository: ghcr.io/onedr0p/sonarr + pullPolicy: IfNotPresent + tag: 3.0.10.1567@sha256:90200b6c31047426aaa175b05715f42edba6bfad34f7845a3ca1b8d8f41b9cd2 +exportarrImage: + repository: ghcr.io/onedr0p/exportarr + pullPolicy: IfNotPresent + tag: v1.6.0@sha256:b522e128509b766cf66f847190fccd225ff194dc76775fe6a215f2dd3010cac2 +service: + main: + ports: + main: + port: 8989 + metrics: + enabled: true + type: ClusterIP + targetSelector: exportarr + ports: + metrics: + enabled: true + port: 8990 + 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: + SONARR__PORT: "{{ .Values.service.main.ports.main.port }}" + SONARR__AUTHENTICATION_METHOD: "" + exportarr: + enabled: true + type: Deployment + strategy: RollingUpdate + replicas: 1 + podSpec: + containers: + exportarr: + primary: true + enabled: true + imageSelector: exportarrImage + args: + - sonarr + 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/sonarr/17.0.6/questions.yaml b/stable/sonarr/17.0.6/questions.yaml new file mode 100644 index 00000000000..db88749230b --- /dev/null +++ b/stable/sonarr/17.0.6/questions.yaml @@ -0,0 +1,2809 @@ +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: SONARR__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: 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 + 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: 8989 + 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" + 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 + 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: widget + label: Widget Settings + schema: + type: dict + additional_attrs: true + attrs: + - 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: service + label: Linked Service + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Service Name + schema: + type: string + default: "" + - variable: port + label: Service Port + schema: + type: int + - variable: tls + label: TLS-Settings + schema: + type: list + default: [] + 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: 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: allowCors + label: "Allow Cross Origin Requests" + schema: + type: boolean + show_if: [["advanced", "=", true]] + 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/sonarr/17.0.6/templates/NOTES.txt b/stable/sonarr/17.0.6/templates/NOTES.txt new file mode 100644 index 00000000000..efcb74cb772 --- /dev/null +++ b/stable/sonarr/17.0.6/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/stable/sonarr/17.0.6/templates/common.yaml b/stable/sonarr/17.0.6/templates/common.yaml new file mode 100644 index 00000000000..3c93f578611 --- /dev/null +++ b/stable/sonarr/17.0.6/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/sonarr/17.0.6/values.yaml b/stable/sonarr/17.0.6/values.yaml new file mode 100644 index 00000000000..e69de29bb2d