From 79cd7c60b16455cd0410621ea964c19987de0ccb Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Wed, 7 Feb 2024 17:58:58 +0000 Subject: [PATCH] Commit new Chart releases for TrueCharts Signed-off-by: TrueCharts-Bot --- stable/chroma/1.0.0/CHANGELOG.md | 10 + stable/chroma/1.0.0/Chart.yaml | 38 + stable/chroma/1.0.0/README.md | 28 + stable/chroma/1.0.0/app-changelog.md | 3 + stable/chroma/1.0.0/app-readme.md | 8 + stable/chroma/1.0.0/charts/common-17.2.26.tgz | Bin 0 -> 97960 bytes stable/chroma/1.0.0/ix_values.yaml | 41 + stable/chroma/1.0.0/questions.yaml | 2831 ++++++++++++++++ stable/chroma/1.0.0/templates/NOTES.txt | 1 + stable/chroma/1.0.0/templates/common.yaml | 1 + stable/chroma/1.0.0/values.yaml | 0 stable/chroma/item.yaml | 4 + stable/fabulinus/1.0.0/CHANGELOG.md | 10 + stable/fabulinus/1.0.0/Chart.yaml | 37 + stable/fabulinus/1.0.0/README.md | 28 + stable/fabulinus/1.0.0/app-changelog.md | 3 + stable/fabulinus/1.0.0/app-readme.md | 8 + .../fabulinus/1.0.0/charts/common-17.2.21.tgz | Bin 0 -> 97582 bytes stable/fabulinus/1.0.0/ix_values.yaml | 65 + stable/fabulinus/1.0.0/questions.yaml | 2916 +++++++++++++++++ stable/fabulinus/1.0.0/templates/NOTES.txt | 1 + stable/fabulinus/1.0.0/templates/common.yaml | 1 + stable/fabulinus/1.0.0/values.yaml | 0 stable/fabulinus/item.yaml | 4 + 24 files changed, 6038 insertions(+) create mode 100644 stable/chroma/1.0.0/CHANGELOG.md create mode 100644 stable/chroma/1.0.0/Chart.yaml create mode 100644 stable/chroma/1.0.0/README.md create mode 100644 stable/chroma/1.0.0/app-changelog.md create mode 100644 stable/chroma/1.0.0/app-readme.md create mode 100644 stable/chroma/1.0.0/charts/common-17.2.26.tgz create mode 100644 stable/chroma/1.0.0/ix_values.yaml create mode 100644 stable/chroma/1.0.0/questions.yaml create mode 100644 stable/chroma/1.0.0/templates/NOTES.txt create mode 100644 stable/chroma/1.0.0/templates/common.yaml create mode 100644 stable/chroma/1.0.0/values.yaml create mode 100644 stable/chroma/item.yaml create mode 100644 stable/fabulinus/1.0.0/CHANGELOG.md create mode 100644 stable/fabulinus/1.0.0/Chart.yaml create mode 100644 stable/fabulinus/1.0.0/README.md create mode 100644 stable/fabulinus/1.0.0/app-changelog.md create mode 100644 stable/fabulinus/1.0.0/app-readme.md create mode 100644 stable/fabulinus/1.0.0/charts/common-17.2.21.tgz create mode 100644 stable/fabulinus/1.0.0/ix_values.yaml create mode 100644 stable/fabulinus/1.0.0/questions.yaml create mode 100644 stable/fabulinus/1.0.0/templates/NOTES.txt create mode 100644 stable/fabulinus/1.0.0/templates/common.yaml create mode 100644 stable/fabulinus/1.0.0/values.yaml create mode 100644 stable/fabulinus/item.yaml diff --git a/stable/chroma/1.0.0/CHANGELOG.md b/stable/chroma/1.0.0/CHANGELOG.md new file mode 100644 index 0000000000..313d486220 --- /dev/null +++ b/stable/chroma/1.0.0/CHANGELOG.md @@ -0,0 +1,10 @@ +--- +title: Changelog +--- + +**Important:** +*for the complete changelog, please refer to the website* + + + +## [chroma-1.0.0](https://github.com/truecharts/charts/compare/chroma-0.0.1...chroma-1.0.0) (2024-02-07) \ No newline at end of file diff --git a/stable/chroma/1.0.0/Chart.yaml b/stable/chroma/1.0.0/Chart.yaml new file mode 100644 index 0000000000..7527a24f56 --- /dev/null +++ b/stable/chroma/1.0.0/Chart.yaml @@ -0,0 +1,38 @@ +annotations: + max_scale_version: 23.10.2 + min_scale_version: 23.10.0 + truecharts.org/SCALE-support: "true" + truecharts.org/category: AI + truecharts.org/max_helm_version: "3.14" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: stable +apiVersion: v2 +appVersion: 0.4.22 +dependencies: + - name: common + version: 17.2.26 + repository: oci://tccr.io/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] +deprecated: false +description: the AI-native open-source embedding database. +home: https://truecharts.org/charts/stable/chroma +icon: https://truecharts.org/img/hotlink-ok/chart-icons/chroma.png +keywords: + - chroma + - embedding + - database +kubeVersion: ">=1.24.0-0" +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: chroma +sources: + - https://github.com/chroma-core/chroma + - https://github.com/truecharts/charts/tree/master/charts/stable/chroma + - https://ghcr.io/chroma-core/chroma +type: application +version: 1.0.0 diff --git a/stable/chroma/1.0.0/README.md b/stable/chroma/1.0.0/README.md new file mode 100644 index 0000000000..5ff7091e0f --- /dev/null +++ b/stable/chroma/1.0.0/README.md @@ -0,0 +1,28 @@ +--- +title: README +--- + +## General Info + +TrueCharts can be installed as both _normal_ Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/incubator/chroma) + +**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/chroma/1.0.0/app-changelog.md b/stable/chroma/1.0.0/app-changelog.md new file mode 100644 index 0000000000..3535f3421e --- /dev/null +++ b/stable/chroma/1.0.0/app-changelog.md @@ -0,0 +1,3 @@ + + +## [chroma-1.0.0](https://github.com/truecharts/charts/compare/chroma-0.0.1...chroma-1.0.0) (2024-02-07) \ No newline at end of file diff --git a/stable/chroma/1.0.0/app-readme.md b/stable/chroma/1.0.0/app-readme.md new file mode 100644 index 0000000000..64e60d4ae2 --- /dev/null +++ b/stable/chroma/1.0.0/app-readme.md @@ -0,0 +1,8 @@ +the AI-native open-source embedding database. + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/chroma](https://truecharts.org/charts/stable/chroma) + +--- + +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/chroma/1.0.0/charts/common-17.2.26.tgz b/stable/chroma/1.0.0/charts/common-17.2.26.tgz new file mode 100644 index 0000000000000000000000000000000000000000..e5258f6f3129524d5434c8a1ff4b4a1e6c82fde9 GIT binary patch literal 97960 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 ba+5Y`lQ!uyO#goX00960fEe!O089)3&)c^G literal 0 HcmV?d00001 diff --git a/stable/chroma/1.0.0/ix_values.yaml b/stable/chroma/1.0.0/ix_values.yaml new file mode 100644 index 0000000000..52d6213bee --- /dev/null +++ b/stable/chroma/1.0.0/ix_values.yaml @@ -0,0 +1,41 @@ +image: + repository: ghcr.io/chroma-core/chroma + pullPolicy: IfNotPresent + tag: 0.4.22@sha256:5c52289301c2f55b5d889edd16966f7349cb7b0e60619597f11e135ee406fec2 + +securityContext: + container: + runAsNonRoot: false + readOnlyRootFilesystem: false + runAsUser: 0 + runAsGroup: 0 + +service: + main: + ports: + main: + protocol: http + targetPort: 8000 + port: 10690 + +workload: + main: + podSpec: + containers: + main: + probes: + liveness: + path: "/api/v1/heartbeat" + readiness: + path: "/api/v1/heartbeat" + env: + IS_PERSISTENT: true + +persistence: + config: + enabled: true + mountPath: "/chroma/chroma" + +portal: + open: + enabled: true diff --git a/stable/chroma/1.0.0/questions.yaml b/stable/chroma/1.0.0/questions.yaml new file mode 100644 index 0000000000..5ca82e2720 --- /dev/null +++ b/stable/chroma/1.0.0/questions.yaml @@ -0,0 +1,2831 @@ +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: Backup Configuration + description: Configure Velero Backup Schedule + - 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" + path: "/docs" +questions: + - variable: global + group: General Settings + label: "Global Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: stopAll + label: Stop All + description: "Stops All Running pods and hibernates cnpg" + schema: + type: boolean + default: false + - variable: workload + group: "Workload Settings" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type (Advanced) + schema: + type: string + default: Deployment + enum: + - value: Deployment + description: Deployment + - value: DaemonSet + description: DaemonSet + - variable: replicas + label: Replicas (Advanced) + description: Set the number of Replicas + schema: + type: int + show_if: [["type", "!=", "DaemonSet"]] + default: 1 + - variable: podSpec + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: containers + label: Containers + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: Main Container + schema: + additional_attrs: true + type: dict + attrs: + - variable: envList + label: Extra Environment Variables + description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." + schema: + type: list + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + - variable: value + label: Value + schema: + type: string + - variable: extraArgs + label: Extra Args + schema: + type: list + default: [] + items: + - variable: arg + label: Arg + schema: + type: string + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: command + label: Command + schema: + type: list + default: [] + items: + - variable: param + label: Param + schema: + type: string + - variable: TZ + label: Timezone + group: "General Settings" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + - variable: podOptions + group: "General Settings" + label: "Global Pod Options (Advanced)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: expertPodOpts + label: "Expert - Pod Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + label: "Host Networking" + schema: + type: boolean + default: false + - variable: dnsConfig + label: "DNS Configuration" + schema: + type: dict + additional_attrs: true + attrs: + - variable: options + label: "Options" + schema: + type: list + default: [{"name": "ndots", "value": "1"}] + items: + - variable: optionsEntry + label: "Option Entry" + schema: + type: dict + additional_attrs: true + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + - variable: nameservers + label: "Nameservers" + schema: + type: list + default: [] + items: + - variable: nsEntry + label: "Nameserver Entry" + schema: + type: string + required: true + - variable: searches + label: "Searches" + schema: + type: list + default: [] + items: + - variable: searchEntry + label: "Search Entry" + schema: + type: string + required: true + + - variable: imagePullSecretList + group: "General Settings" + label: "Image Pull Secrets" + schema: + type: list + default: [] + items: + - variable: pullsecretentry + label: "Pull Secret" + schema: + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: true + - variable: data + label: Data + schema: + type: dict + additional_attrs: true + attrs: + - variable: registry + label: "Registry" + schema: + type: string + required: true + default: "https://index.docker.io/v1/" + - variable: username + label: "Username" + schema: + type: string + required: true + default: "" + - variable: password + label: "Password" + schema: + type: string + required: true + private: true + default: "" + - variable: email + label: "Email" + schema: + type: string + required: true + default: "" + - variable: service + group: Networking and Services + label: Configure Service(s) + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the Service + schema: + type: boolean + default: true + hidden: true + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "Service's Port(s) Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 10690 + required: true + - variable: serviceexpert + group: Networking and Services + label: Show Expert Config + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: scaleExternalInterface + description: Add External Interfaces + label: Add external Interfaces + group: Networking + schema: + type: list + items: + - variable: interfaceConfiguration + description: Interface Configuration + label: Interface Configuration + schema: + additional_attrs: true + type: dict + $ref: + - "normalize/interfaceConfiguration" + attrs: + - variable: hostInterface + description: Please Specify Host Interface + label: Host Interface + schema: + type: string + required: true + $ref: + - "definitions/interface" + - variable: ipam + description: Define how IP Address will be managed + label: IP Address Management + schema: + additional_attrs: true + type: dict + required: true + attrs: + - variable: type + description: Specify type for IPAM + label: IPAM Type + schema: + type: string + required: true + enum: + - value: dhcp + description: Use DHCP + - value: static + description: Use Static IP + - variable: staticIPConfigurations + label: Static IP Addresses + schema: + type: list + show_if: [["type", "=", "static"]] + items: + - variable: staticIP + label: Static IP + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: Static Routes + schema: + type: list + show_if: [["type", "=", "static"]] + items: + - variable: staticRouteConfiguration + label: Static Route Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: destination + label: Destination + schema: + type: ipaddr + cidr: true + required: true + - variable: gateway + label: Gateway + schema: + type: ipaddr + cidr: false + required: true + - variable: serviceList + label: Add Manual Custom Services + group: Networking and Services + schema: + type: list + default: [] + items: + - variable: serviceListEntry + label: Custom Service + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the service + schema: + type: boolean + default: true + hidden: true + - variable: name + label: Name + schema: + type: string + default: "" + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - value: Simple + description: Deprecated CHANGE THIS + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: advancedsvcset + label: Show Advanced Service Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + type: list + default: [] + items: + - variable: externalIP + label: External IP + schema: + type: string + - variable: ipFamilyPolicy + label: IP Family Policy + description: Specify the IP Policy + schema: + type: string + default: SingleStack + enum: + - value: SingleStack + description: SingleStack + - value: PreferDualStack + description: PreferDualStack + - value: RequireDualStack + description: RequireDualStack + - variable: ipFamilies + label: IP Families + description: (Advanced) The IP Families that should be used + schema: + type: list + default: [] + items: + - variable: ipFamily + label: IP Family + schema: + type: string + - variable: portsList + label: Additional Service Ports + schema: + type: list + default: [] + items: + - variable: portsListEntry + label: Custom ports + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the Port + schema: + type: boolean + default: true + hidden: true + - variable: name + label: Port Name + schema: + type: string + default: "" + - variable: protocol + label: Port Type + schema: + type: string + default: tcp + enum: + - value: http + description: HTTP + - value: https + description: HTTPS + - value: tcp + description: TCP + - value: udp + description: UDP + - variable: targetPort + label: Target Port + description: This port exposes the container port on the service + schema: + type: int + required: true + - variable: port + label: Container Port + schema: + type: int + required: true + - variable: persistence + label: Integrated Persistent Storage + description: Integrated Persistent Storage + group: Storage and Persistence + schema: + additional_attrs: true + type: dict + attrs: + - variable: config + label: "App Config Storage" + description: "Stores the Application Configuration." + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI Share + - variable: server + label: NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: Path on NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: medium + label: EmptyDir Medium + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: Default + - value: Memory + description: Memory + - variable: size + label: Size quotum of Storage (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: persistenceList + label: Additional App Storage + group: Storage and Persistence + schema: + type: list + default: [] + items: + - variable: persistenceListEntry + label: Custom Storage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the storage + schema: + type: boolean + default: true + hidden: true + - variable: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: hostPath + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - variable: server + label: NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: Path on NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: Mount Path + description: Path inside the container the storage is mounted + schema: + type: string + default: "" + required: true + valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$' + - variable: medium + label: EmptyDir Medium + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: Default + - value: Memory + description: Memory + - variable: size + label: Size Quotum of Storage + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: ingress + label: "" + group: Ingress + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [{path: "/", pathType: "Prefix"}] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name (Optional) + description: Defaults to chart name + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description (Optional) + description: Defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: icon + label: Icon (Optional) + description: Defaults to chart icon + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: widget + label: Widget Settings + schema: + type: dict + additional_attrs: true + show_if: [["enabled", "=", true]] + attrs: + - variable: enabled + label: Enable Widget + description: When disabled all widget annotations are skipped. + schema: + type: boolean + default: true + - variable: custom + label: Options + schema: + type: dict + additional_attrs: true + attrs: + - variable: key + label: API-key (key) + schema: + type: string + default: "" + - variable: customkv + label: Custom Options + schema: + type: list + default: [] + items: + - variable: option + label: Option + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + default: "" + required: true + - variable: value + label: Value + schema: + type: string + default: "" + required: true + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + default: [] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + + - variable: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: ingressList + label: Add Manual Custom Ingresses + group: Ingress + schema: + type: list + default: [] + items: + - variable: ingressListEntry + label: Custom Ingress + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: true + hidden: true + - variable: name + label: Name + schema: + type: string + default: "" + - variable: ingressClassName + label: IngressClass Name + schema: + type: string + default: "" + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: overrideService + label: Linked Service + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Service Name + schema: + type: string + default: "" + - variable: port + label: Service Port + schema: + type: int + - variable: tls + label: TLS-Settings + schema: + type: list + default: [] + show_if: [["certificateIssuer", "=", ""]] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + - variable: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your Cert-Manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: scaleCert + label: Use TrueNAS SCALE Certificate (Deprecated) + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: "Allow Cross Origin Requests" + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: namespace + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description + description: defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: securityContext + group: Security and Permissions + label: Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: container + label: Container + schema: + additional_attrs: true + type: dict + attrs: + # Settings from questions.yaml get appended here on a per-app basis + - variable: runAsUser + label: "runAsUser" + description: "The UserID of the user running the application" + schema: + type: int + default: 0 + - variable: runAsGroup + label: "runAsGroup" + description: "The groupID of the user running the application" + schema: + type: int + default: 0 + # Settings from questions.yaml get appended here on a per-app basis + - variable: PUID + label: Process User ID - PUID + description: When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps + schema: + type: int + show_if: [["runAsUser", "=", 0]] + default: 568 + - variable: UMASK + label: UMASK + description: When supported by the container, this sets the UMASK for the App. Not supported by all Apps + schema: + type: string + default: "0022" + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: true + - variable: pod + label: Pod + schema: + additional_attrs: true + type: dict + attrs: + - variable: fsGroupChangePolicy + label: "When should we take ownership?" + schema: + type: string + default: OnRootMismatch + enum: + - value: OnRootMismatch + description: OnRootMismatch + - value: Always + description: Always + - variable: supplementalGroups + label: Supplemental Groups + schema: + type: list + default: [] + items: + - variable: supplementalGroupsEntry + label: Supplemental Group + schema: + type: int + # Settings from questions.yaml get appended here on a per-app basis + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: resources + group: Resources and Devices + label: "Resource Limits" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: Advanced Limit Resource Consumption + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 4000m + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: RAM + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 8Gi + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: requests + label: "Minimum Resources Required (request)" + schema: + additional_attrs: true + type: dict + hidden: true + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 10m + hidden: true + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 50Mi + hidden: true + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: deviceList + label: Mount USB Devices + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: deviceListEntry + label: Device + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the Storage + schema: + type: boolean + default: true + - variable: type + label: (Advanced) Type of Storage + description: Sets the persistence type + schema: + type: string + default: device + hidden: true + - variable: readOnly + label: readOnly + schema: + type: boolean + default: false + - variable: hostPath + label: Host Device Path + description: Path to the device on the host system + schema: + type: path + - variable: mountPath + label: Container Device Path + description: Path inside the container the device is mounted + schema: + type: string + default: "/dev/ttyACM0" + - variable: scaleGPU + label: GPU Configuration + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: scaleGPUEntry + label: GPU + schema: + additional_attrs: true + type: dict + attrs: + # Specify GPU configuration + - variable: gpu + label: Select GPU + schema: + additional_attrs: true + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + - variable: workaround + label: "Workaround" + schema: + type: string + default: workaround + hidden: true +# - variable: horizontalPodAutoscaler +# group: Advanced +# label: (Advanced) Horizontal Pod Autoscaler +# schema: +# type: list +# default: [] +# items: +# - variable: hpaEntry +# label: HPA Entry +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: name +# label: Name +# schema: +# type: string +# required: true +# default: "" +# - variable: enabled +# label: Enabled +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: target +# label: Target +# description: Deployment name, Defaults to Main Deployment +# schema: +# type: string +# default: "" +# - variable: minReplicas +# label: Minimum Replicas +# schema: +# type: int +# default: 1 +# - variable: maxReplicas +# label: Maximum Replicas +# schema: +# type: int +# default: 5 +# - variable: targetCPUUtilizationPercentage +# label: Target CPU Utilization Percentage +# schema: +# type: int +# default: 80 +# - variable: targetMemoryUtilizationPercentage +# label: Target Memory Utilization Percentage +# schema: +# type: int +# default: 80 + - variable: networkPolicy + group: Advanced + label: (Advanced) Network Policy + schema: + type: list + default: [] + items: + - variable: netPolicyEntry + label: Network Policy Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: policyType + label: Policy Type + schema: + type: string + default: "" + enum: + - value: "" + description: Default + - value: ingress + description: Ingress + - value: egress + description: Egress + - value: ingress-egress + description: Ingress and Egress + - variable: egress + label: Egress + schema: + type: list + default: [] + items: + - variable: egressEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: to + label: To + schema: + type: list + default: [] + items: + - variable: toEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: ipBlock + label: IP Block + schema: + additional_attrs: true + type: dict + attrs: + - variable: cidr + label: CIDR + schema: + type: string + default: "" + - variable: except + label: Except + schema: + type: list + default: [] + items: + - variable: exceptint + label: "" + schema: + type: string + - variable: namespaceSelector + label: Namespace Selector + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: podSelector + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: ports + label: Ports + schema: + type: list + default: [] + items: + - variable: portsEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + - variable: endPort + label: End Port + schema: + type: int + - variable: protocol + label: Protocol + schema: + type: string + default: TCP + enum: + - value: TCP + description: TCP + - value: UDP + description: UDP + - value: SCTP + description: SCTP + - variable: ingress + label: Ingress + schema: + type: list + default: [] + items: + - variable: ingressEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: from + label: From + schema: + type: list + default: [] + items: + - variable: fromEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: ipBlock + label: IP Block + schema: + additional_attrs: true + type: dict + attrs: + - variable: cidr + label: CIDR + schema: + type: string + default: "" + - variable: except + label: Except + schema: + type: list + default: [] + items: + - variable: exceptint + label: "" + schema: + type: string + - variable: namespaceSelector + label: Namespace Selector + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: podSelector + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: ports + label: Ports + schema: + type: list + default: [] + items: + - variable: portsEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + - variable: endPort + label: End Port + schema: + type: int + - variable: protocol + label: Protocol + schema: + type: string + default: TCP + enum: + - value: TCP + description: TCP + - value: UDP + description: UDP + - value: SCTP + description: SCTP + - variable: addons + group: Addons + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: Codeserver + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: NodePort + description: Deprecated CHANGE THIS + - value: ClusterIP + description: ClusterIP + - value: LoadBalancer + description: LoadBalancer + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + default: 36107 + - variable: ingress + label: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [{path: "/", pathType: "Prefix"}] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + default: [] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + + - variable: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: envList + label: Codeserver Environment Variables + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + - variable: netshoot + label: Netshoot + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: envList + label: Netshoot Environment Variables + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + - variable: vpn + label: VPN + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type + schema: + type: string + default: disabled + enum: + - value: disabled + description: disabled + - value: gluetun + description: Gluetun + - value: tailscale + description: Tailscale + - value: openvpn + description: OpenVPN (Deprecated) + - value: wireguard + description: Wireguard (Deprecated) + - variable: openvpn + label: OpenVPN Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "openvpn"]] + attrs: + - variable: username + label: Authentication Username (Optional) + description: Authentication Username, Optional + schema: + type: string + default: "" + - variable: password + label: Authentication Password + description: Authentication Credentials + schema: + type: string + show_if: [["username", "!=", ""]] + default: "" + required: true + - variable: tailscale + label: Tailscale Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "tailscale"]] + attrs: + - variable: authkey + label: Authentication Key + description: Provide an auth key to automatically authenticate the node as your user account. + schema: + type: string + private: true + default: "" + - variable: auth_once + label: Auth Once + description: Only attempt to log in if not already logged in. + schema: + type: boolean + default: true + - variable: accept_dns + label: Accept DNS + description: Accept DNS configuration from the admin console. + schema: + type: boolean + default: false + - variable: userspace + label: Userspace + description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. + schema: + type: boolean + default: false + - variable: routes + label: Routes + description: Expose physical subnet routes to your entire Tailscale network. + schema: + type: string + default: "" + - variable: dest_ip + label: Destination IP + description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. + schema: + type: string + default: "" + - variable: sock5_server + label: Sock5 Server + description: The address on which to listen for SOCKS5 proxying into the tailscale net. + schema: + type: string + default: "" + - variable: outbound_http_proxy_listen + label: Outbound HTTP Proxy Listen + description: The address on which to listen for HTTP proxying into the tailscale net. + schema: + type: string + default: "" + - variable: extra_args + label: Extra Args + description: Extra Args + schema: + type: string + default: "" + - variable: daemon_extra_args + label: Tailscale Daemon Extra Args + description: Tailscale Daemon Extra Args + schema: + type: string + default: "" + - variable: killSwitch + label: Enable Killswitch + schema: + type: boolean + show_if: [["type", "!=", "disabled"]] + default: true + - variable: excludedNetworks_IPv4 + label: Killswitch Excluded IPv4 networks + description: List of Killswitch Excluded IPv4 Addresses + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv4 + label: IPv4 Network + schema: + type: string + required: true + - variable: excludedNetworks_IPv6 + label: Killswitch Excluded IPv6 networks + description: "List of Killswitch Excluded IPv6 Addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv6 + label: IPv6 Network + schema: + type: string + required: true + - variable: configFile + label: VPN Config File Location + schema: + type: string + show_if: [["type", "!=", "disabled"]] + default: "" + + - variable: envList + label: VPN Environment Variables + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + max_length: 10240 + - variable: docs + group: Documentation + label: Please read the documentation at https://truecharts.org + description: Please read the documentation at +
https://truecharts.org + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDocs + label: I have checked the documentation + schema: + type: boolean + default: true + - variable: donateNag + group: Documentation + label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor + description: Please consider supporting TrueCharts, see +
https://truecharts.org/sponsor + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDonate + label: I have considered donating + schema: + type: boolean + default: true + hidden: true diff --git a/stable/chroma/1.0.0/templates/NOTES.txt b/stable/chroma/1.0.0/templates/NOTES.txt new file mode 100644 index 0000000000..efcb74cb77 --- /dev/null +++ b/stable/chroma/1.0.0/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/stable/chroma/1.0.0/templates/common.yaml b/stable/chroma/1.0.0/templates/common.yaml new file mode 100644 index 0000000000..b51394e00a --- /dev/null +++ b/stable/chroma/1.0.0/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.v1.common.loader.all" . }} diff --git a/stable/chroma/1.0.0/values.yaml b/stable/chroma/1.0.0/values.yaml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/stable/chroma/item.yaml b/stable/chroma/item.yaml new file mode 100644 index 0000000000..73c7b7c4dc --- /dev/null +++ b/stable/chroma/item.yaml @@ -0,0 +1,4 @@ +icon_url: https://truecharts.org/img/hotlink-ok/chart-icons/chroma.png +categories: +- AI +screenshots: [] diff --git a/stable/fabulinus/1.0.0/CHANGELOG.md b/stable/fabulinus/1.0.0/CHANGELOG.md new file mode 100644 index 0000000000..1bd4b52839 --- /dev/null +++ b/stable/fabulinus/1.0.0/CHANGELOG.md @@ -0,0 +1,10 @@ +--- +title: Changelog +--- + +**Important:** +*for the complete changelog, please refer to the website* + + + +## [fabulinus-1.0.0](https://github.com/truecharts/charts/compare/fabulinus-0.0.3...fabulinus-1.0.0) (2024-02-07) \ No newline at end of file diff --git a/stable/fabulinus/1.0.0/Chart.yaml b/stable/fabulinus/1.0.0/Chart.yaml new file mode 100644 index 0000000000..76a25ffea3 --- /dev/null +++ b/stable/fabulinus/1.0.0/Chart.yaml @@ -0,0 +1,37 @@ +annotations: + max_scale_version: 23.10.2 + min_scale_version: 23.10.0 + truecharts.org/SCALE-support: "true" + truecharts.org/category: AI + truecharts.org/max_helm_version: "3.14" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: stable +apiVersion: v2 +appVersion: latest-cpu +dependencies: + - name: common + version: 17.2.21 + repository: oci://tccr.io/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] +deprecated: false +description: Fabulinus is the server component of the TitanML Takeoff server. +home: https://truecharts.org/charts/stable/fabulinus +icon: https://truecharts.org/img/hotlink-ok/chart-icons/fabulinus.png +keywords: + - fabulinus + - machine-learning +kubeVersion: ">=1.24.0-0" +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: fabulinus +sources: + - https://github.com/titanml/takeoff-communitys + - https://github.com/truecharts/charts/tree/master/charts/stable/fabulinus + - https://hub.docker.com/r/tytn/fabulinus +type: application +version: 1.0.0 diff --git a/stable/fabulinus/1.0.0/README.md b/stable/fabulinus/1.0.0/README.md new file mode 100644 index 0000000000..6e5ab682ae --- /dev/null +++ b/stable/fabulinus/1.0.0/README.md @@ -0,0 +1,28 @@ +--- +title: README +--- + +## General Info + +TrueCharts can be installed as both _normal_ Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/incubator/fabulinus) + +**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/fabulinus/1.0.0/app-changelog.md b/stable/fabulinus/1.0.0/app-changelog.md new file mode 100644 index 0000000000..98377a3343 --- /dev/null +++ b/stable/fabulinus/1.0.0/app-changelog.md @@ -0,0 +1,3 @@ + + +## [fabulinus-1.0.0](https://github.com/truecharts/charts/compare/fabulinus-0.0.3...fabulinus-1.0.0) (2024-02-07) \ No newline at end of file diff --git a/stable/fabulinus/1.0.0/app-readme.md b/stable/fabulinus/1.0.0/app-readme.md new file mode 100644 index 0000000000..ce12b04cc5 --- /dev/null +++ b/stable/fabulinus/1.0.0/app-readme.md @@ -0,0 +1,8 @@ +Fabulinus is the server component of the TitanML Takeoff server. + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/fabulinus](https://truecharts.org/charts/stable/fabulinus) + +--- + +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/fabulinus/1.0.0/charts/common-17.2.21.tgz b/stable/fabulinus/1.0.0/charts/common-17.2.21.tgz new file mode 100644 index 0000000000000000000000000000000000000000..247e7e80d51d061dfee4c297c67e8a0e72ae4198 GIT binary patch literal 97582 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

4-ZVO1Vc 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 H07eV| + Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: medium + label: EmptyDir Medium + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: Default + - value: Memory + description: Memory + - variable: size + label: Size quotum of Storage (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: persistenceList + label: Additional App Storage + group: Storage and Persistence + schema: + type: list + default: [] + items: + - variable: persistenceListEntry + label: Custom Storage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the storage + schema: + type: boolean + default: true + hidden: true + - variable: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: hostPath + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - variable: server + label: NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: Path on NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
+ Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: Mount Path + description: Path inside the container the storage is mounted + schema: + type: string + default: "" + required: true + valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$' + - variable: medium + label: EmptyDir Medium + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: Default + - value: Memory + description: Memory + - variable: size + label: Size Quotum of Storage + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + - variable: ingress + label: "" + group: Ingress + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [{path: "/", pathType: "Prefix"}] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name (Optional) + description: Defaults to chart name + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description (Optional) + description: Defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: icon + label: Icon (Optional) + description: Defaults to chart icon + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: widget + label: Widget Settings + schema: + type: dict + additional_attrs: true + show_if: [["enabled", "=", true]] + attrs: + - variable: enabled + label: Enable Widget + description: When disabled all widget annotations are skipped. + schema: + type: boolean + default: true + - variable: custom + label: Options + schema: + type: dict + additional_attrs: true + attrs: + - variable: key + label: API-key (key) + schema: + type: string + default: "" + - variable: customkv + label: Custom Options + schema: + type: list + default: [] + items: + - variable: option + label: Option + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + default: "" + required: true + - variable: value + label: Value + schema: + type: string + default: "" + required: true + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + default: [] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + + - variable: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: ingressList + label: Add Manual Custom Ingresses + group: Ingress + schema: + type: list + default: [] + items: + - variable: ingressListEntry + label: Custom Ingress + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: true + hidden: true + - variable: name + label: Name + schema: + type: string + default: "" + - variable: ingressClassName + label: IngressClass Name + schema: + type: string + default: "" + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: overrideService + label: Linked Service + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Service Name + schema: + type: string + default: "" + - variable: port + label: Service Port + schema: + type: int + - variable: tls + label: TLS-Settings + schema: + type: list + default: [] + show_if: [["certificateIssuer", "=", ""]] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + - variable: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your Cert-Manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: scaleCert + label: Use TrueNAS SCALE Certificate (Deprecated) + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: "Allow Cross Origin Requests" + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: namespace + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description + description: defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: securityContext + group: Security and Permissions + label: Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: container + label: Container + schema: + additional_attrs: true + type: dict + attrs: + # Settings from questions.yaml get appended here on a per-app basis + - variable: runAsUser + label: "runAsUser" + description: "The UserID of the user running the application" + schema: + type: int + default: 0 + - variable: runAsGroup + label: "runAsGroup" + description: "The groupID of the user running the application" + schema: + type: int + default: 0 + # Settings from questions.yaml get appended here on a per-app basis + - variable: PUID + label: Process User ID - PUID + description: When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps + schema: + type: int + show_if: [["runAsUser", "=", 0]] + default: 568 + - variable: UMASK + label: UMASK + description: When supported by the container, this sets the UMASK for the App. Not supported by all Apps + schema: + type: string + default: "0022" + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: true + - variable: pod + label: Pod + schema: + additional_attrs: true + type: dict + attrs: + - variable: fsGroupChangePolicy + label: "When should we take ownership?" + schema: + type: string + default: OnRootMismatch + enum: + - value: OnRootMismatch + description: OnRootMismatch + - value: Always + description: Always + - variable: supplementalGroups + label: Supplemental Groups + schema: + type: list + default: [] + items: + - variable: supplementalGroupsEntry + label: Supplemental Group + schema: + type: int + # Settings from questions.yaml get appended here on a per-app basis + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: resources + group: Resources and Devices + label: "Resource Limits" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: Advanced Limit Resource Consumption + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 4000m + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: RAM + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 8Gi + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: requests + label: "Minimum Resources Required (request)" + schema: + additional_attrs: true + type: dict + hidden: true + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 10m + hidden: true + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 50Mi + hidden: true + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: deviceList + label: Mount USB Devices + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: deviceListEntry + label: Device + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the Storage + schema: + type: boolean + default: true + - variable: type + label: (Advanced) Type of Storage + description: Sets the persistence type + schema: + type: string + default: device + hidden: true + - variable: readOnly + label: readOnly + schema: + type: boolean + default: false + - variable: hostPath + label: Host Device Path + description: Path to the device on the host system + schema: + type: path + - variable: mountPath + label: Container Device Path + description: Path inside the container the device is mounted + schema: + type: string + default: "/dev/ttyACM0" + - variable: scaleGPU + label: GPU Configuration + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: scaleGPUEntry + label: GPU + schema: + additional_attrs: true + type: dict + attrs: + # Specify GPU configuration + - variable: gpu + label: Select GPU + schema: + additional_attrs: true + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + - variable: workaround + label: "Workaround" + schema: + type: string + default: workaround + hidden: true +# - variable: horizontalPodAutoscaler +# group: Advanced +# label: (Advanced) Horizontal Pod Autoscaler +# schema: +# type: list +# default: [] +# items: +# - variable: hpaEntry +# label: HPA Entry +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: name +# label: Name +# schema: +# type: string +# required: true +# default: "" +# - variable: enabled +# label: Enabled +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: target +# label: Target +# description: Deployment name, Defaults to Main Deployment +# schema: +# type: string +# default: "" +# - variable: minReplicas +# label: Minimum Replicas +# schema: +# type: int +# default: 1 +# - variable: maxReplicas +# label: Maximum Replicas +# schema: +# type: int +# default: 5 +# - variable: targetCPUUtilizationPercentage +# label: Target CPU Utilization Percentage +# schema: +# type: int +# default: 80 +# - variable: targetMemoryUtilizationPercentage +# label: Target Memory Utilization Percentage +# schema: +# type: int +# default: 80 + - variable: networkPolicy + group: Advanced + label: (Advanced) Network Policy + schema: + type: list + default: [] + items: + - variable: netPolicyEntry + label: Network Policy Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: policyType + label: Policy Type + schema: + type: string + default: "" + enum: + - value: "" + description: Default + - value: ingress + description: Ingress + - value: egress + description: Egress + - value: ingress-egress + description: Ingress and Egress + - variable: egress + label: Egress + schema: + type: list + default: [] + items: + - variable: egressEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: to + label: To + schema: + type: list + default: [] + items: + - variable: toEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: ipBlock + label: IP Block + schema: + additional_attrs: true + type: dict + attrs: + - variable: cidr + label: CIDR + schema: + type: string + default: "" + - variable: except + label: Except + schema: + type: list + default: [] + items: + - variable: exceptint + label: "" + schema: + type: string + - variable: namespaceSelector + label: Namespace Selector + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: podSelector + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: ports + label: Ports + schema: + type: list + default: [] + items: + - variable: portsEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + - variable: endPort + label: End Port + schema: + type: int + - variable: protocol + label: Protocol + schema: + type: string + default: TCP + enum: + - value: TCP + description: TCP + - value: UDP + description: UDP + - value: SCTP + description: SCTP + - variable: ingress + label: Ingress + schema: + type: list + default: [] + items: + - variable: ingressEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: from + label: From + schema: + type: list + default: [] + items: + - variable: fromEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: ipBlock + label: IP Block + schema: + additional_attrs: true + type: dict + attrs: + - variable: cidr + label: CIDR + schema: + type: string + default: "" + - variable: except + label: Except + schema: + type: list + default: [] + items: + - variable: exceptint + label: "" + schema: + type: string + - variable: namespaceSelector + label: Namespace Selector + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: podSelector + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: ports + label: Ports + schema: + type: list + default: [] + items: + - variable: portsEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + - variable: endPort + label: End Port + schema: + type: int + - variable: protocol + label: Protocol + schema: + type: string + default: TCP + enum: + - value: TCP + description: TCP + - value: UDP + description: UDP + - value: SCTP + description: SCTP + - variable: addons + group: Addons + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: Codeserver + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: NodePort + description: Deprecated CHANGE THIS + - value: ClusterIP + description: ClusterIP + - value: LoadBalancer + description: LoadBalancer + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + default: 36107 + - variable: ingress + label: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [{path: "/", pathType: "Prefix"}] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + default: [] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + + - variable: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: envList + label: Codeserver Environment Variables + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + - variable: netshoot + label: Netshoot + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: envList + label: Netshoot Environment Variables + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + - variable: vpn + label: VPN + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type + schema: + type: string + default: disabled + enum: + - value: disabled + description: disabled + - value: gluetun + description: Gluetun + - value: tailscale + description: Tailscale + - value: openvpn + description: OpenVPN (Deprecated) + - value: wireguard + description: Wireguard (Deprecated) + - variable: openvpn + label: OpenVPN Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "openvpn"]] + attrs: + - variable: username + label: Authentication Username (Optional) + description: Authentication Username, Optional + schema: + type: string + default: "" + - variable: password + label: Authentication Password + description: Authentication Credentials + schema: + type: string + show_if: [["username", "!=", ""]] + default: "" + required: true + - variable: tailscale + label: Tailscale Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "tailscale"]] + attrs: + - variable: authkey + label: Authentication Key + description: Provide an auth key to automatically authenticate the node as your user account. + schema: + type: string + private: true + default: "" + - variable: auth_once + label: Auth Once + description: Only attempt to log in if not already logged in. + schema: + type: boolean + default: true + - variable: accept_dns + label: Accept DNS + description: Accept DNS configuration from the admin console. + schema: + type: boolean + default: false + - variable: userspace + label: Userspace + description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. + schema: + type: boolean + default: false + - variable: routes + label: Routes + description: Expose physical subnet routes to your entire Tailscale network. + schema: + type: string + default: "" + - variable: dest_ip + label: Destination IP + description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. + schema: + type: string + default: "" + - variable: sock5_server + label: Sock5 Server + description: The address on which to listen for SOCKS5 proxying into the tailscale net. + schema: + type: string + default: "" + - variable: outbound_http_proxy_listen + label: Outbound HTTP Proxy Listen + description: The address on which to listen for HTTP proxying into the tailscale net. + schema: + type: string + default: "" + - variable: extra_args + label: Extra Args + description: Extra Args + schema: + type: string + default: "" + - variable: daemon_extra_args + label: Tailscale Daemon Extra Args + description: Tailscale Daemon Extra Args + schema: + type: string + default: "" + - variable: killSwitch + label: Enable Killswitch + schema: + type: boolean + show_if: [["type", "!=", "disabled"]] + default: true + - variable: excludedNetworks_IPv4 + label: Killswitch Excluded IPv4 networks + description: List of Killswitch Excluded IPv4 Addresses + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv4 + label: IPv4 Network + schema: + type: string + required: true + - variable: excludedNetworks_IPv6 + label: Killswitch Excluded IPv6 networks + description: "List of Killswitch Excluded IPv6 Addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv6 + label: IPv6 Network + schema: + type: string + required: true + - variable: configFile + label: VPN Config File Location + schema: + type: string + show_if: [["type", "!=", "disabled"]] + default: "" + + - variable: envList + label: VPN Environment Variables + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + max_length: 10240 + - variable: docs + group: Documentation + label: Please read the documentation at https://truecharts.org + description: Please read the documentation at +
https://truecharts.org + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDocs + label: I have checked the documentation + schema: + type: boolean + default: true + - variable: donateNag + group: Documentation + label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor + description: Please consider supporting TrueCharts, see +
https://truecharts.org/sponsor + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDonate + label: I have considered donating + schema: + type: boolean + default: true + hidden: true diff --git a/stable/fabulinus/1.0.0/templates/NOTES.txt b/stable/fabulinus/1.0.0/templates/NOTES.txt new file mode 100644 index 0000000000..efcb74cb77 --- /dev/null +++ b/stable/fabulinus/1.0.0/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/stable/fabulinus/1.0.0/templates/common.yaml b/stable/fabulinus/1.0.0/templates/common.yaml new file mode 100644 index 0000000000..b51394e00a --- /dev/null +++ b/stable/fabulinus/1.0.0/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.v1.common.loader.all" . }} diff --git a/stable/fabulinus/1.0.0/values.yaml b/stable/fabulinus/1.0.0/values.yaml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/stable/fabulinus/item.yaml b/stable/fabulinus/item.yaml new file mode 100644 index 0000000000..b9680c6b8f --- /dev/null +++ b/stable/fabulinus/item.yaml @@ -0,0 +1,4 @@ +icon_url: https://truecharts.org/img/hotlink-ok/chart-icons/fabulinus.png +categories: +- AI +screenshots: []