groups: - name: Image description: | Configured the images to be used for the Chart. It's wise to use "digest pinned" tags and to avoid using "latest". Checkout the following documentation for more information: - https://truecharts.org/common/#images - name: General description: | For TrueNAS SCALE We've grouped a number of settings here, that all effact how apps run in general. Checkout the following documentation for more information: - https://truecharts.org/common/global/ - https://truecharts.org/common/#tz - https://truecharts.org/common/podoptions/ - Image Pull Secrets - name: Workload description: | These settings configure how the actual Pods and containers are running. Generally, on SCALE, we only expose a limited subset of these settings for the primary workload and container. Checkout the following documentation for more information: - https://truecharts.org/common/workload/ - https://truecharts.org/common/container/ - name: App Configuration description: | Every application has different values that may be required to run or have multiple options that the user may choose to enable or disable to change the behavior of the application. Most options should have a Tooltip (Circled Question Mark) to further describe said option. To find more information, lookup your chart-specific documentation in the Charts List: https://truecharts.org/charts/description-list/ - name: Services description: | Service and Networking options for any applications are contained here. Some applications may have complicated networking setups with multiple options or some may have no options here at all. Options here include the service and port configurations for the application, and more may be enabled or changed under the Advanced Settings and Show Expert Config boxes. Checkout the following documentation for more information: - https://truecharts.org/common/service/ - name: Networking description: | Contains advanced networking options that are not actively supported by the TrueCharts team. Currently only contains scaleExternalInterfaces. Checkout the following documentation for more information: - https://truecharts.org/common/scaleexternalinterface/ - name: Persistence description: | Many applications will have certain options for storage to be configurable by the user, the main two being PVC and hostpath but may include other types. This storage is called Persistence since it is not deleted upon restart or upgrade of an application. Checkout the following documentation for more information: - https://truecharts.org/common/persistence/ - https://truecharts.org/scale/guides/nfs-share/ - https://truecharts.org/general/faq/#why-pvc-is-recommended-over-hostpath - name: Ingress description: | Ingress (more commonly known as Reverse Proxy) settings can be configured here. This is how Kubernetes connects your Applications in containers to FQDNs (fully qualified domain names). If you choose to enable this you must have a "Ingress Provider" aka "Reverse Proxy" installed (We highly advice Traefik: https://truecharts.org/charts/premium/traefik/) It also requiresa DNS service to actually resolve the DNS name of the FQDN specified. Checkout the following documentation for more information: - https://truecharts.org/common/ingress/ - name: SecurityContext description: | The security settings for each application and/or permissions that each application may have for the files/directories created. Each application will come with predefined permissions but users may want to change certain setting depending on their usage or capabilities. Unless necessary users are advised to keep this section mostly to defaults. Checkout the following documentation for more information: - https://truecharts.org/common/securitycontext/ - name: Resources description: | Resources limits that have been defined by each application are in this section. Most will have a specific default that some users may want to change based on their specific hardware or needs. This also contains the options to mount GPUs or, more precisely, "request" GPU's to be mounted. Checkout the following documentation for more information: - https://truecharts.org/common/resources/ - name: Devices description: | These are special "mountpoints" that can be used to mount miscelanious USB and PCI devices using special hostPath mounts. For clearity we've decided to seperate this from persistence on SCALE. Checkout the following documentation for more information: - https://truecharts.org/common/persistence/device/ - https://truecharts.org/scale/guides/pci-passthrough/ - name: Middlewares description: Traefik Middlewares - name: StorageClass description: | StorageClasses define where to storage Storage. Checkout the following documentation for more information: - name: Metrics description: | Contains options to configure Prometheus metrics for the application. Checkout the following documentation for more information: - https://truecharts.org/common/metrics/ - name: Addons description: | Addons that are supplied by the TrueCharts team to add additional capabilities for users to use on top of the application’s defaults. Things included here are VPN addons, Codeserver for editing files inside the application’s container, Netshoot for network troubelshooting, etc. Generally not required for use but may be necessary or usefull at times for specific applications. Checkout the following documentation for more information: - https://truecharts.org/common/addons/ - https://truecharts.org/scale/guides/vpn-setup/ - name: Experimental description: | Experimental Configuration Options Often these are not fully flushed-out, could randomly break or might not work at-all. - name: Postgresql description: | For Postgresql we use "CloudNative-PG" as a backend, which has to be installed first. Checkout the following documentation for more information: - https://truecharts.org/common/cnpg/ - https://truecharts.org/scale/guides/sql-export/ - https://truecharts.org/scale/guides/recover-cnpg/ - name: Dependencies description: | contains dependency setting for which we, currently, do not have seperate catagories (yet) - name: Documentation description: | We added this section to make everyone aware that OpenSource isn't always easy. It doesn't keep existing without signficant ongoing support, so please consider supporting TrueCharts and other OpenSource projects. Before installing, be sure you've followed the https://truecharts.org/scale/guides/getting-started/ We would also advice going over our https://truecharts.org/scale/guides/scale-intro/ and many of the other documentation pages... portals: open: protocols: - "$kubernetes-resource_configmap_tcportal-open_protocol" host: - "$kubernetes-resource_configmap_tcportal-open_host" ports: - "$kubernetes-resource_configmap_tcportal-open_port" questions: - variable: global group: General 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: credentialsList group: General label: "Credentials (Experimental)" schema: type: list default: [] items: - variable: credentialsEntry label: "Enter Credentials" schema: additional_attrs: true type: dict attrs: - variable: name label: Name description: "Name" schema: type: string required: true default: "" - variable: type label: Type description: "Type of Credential" schema: type: string default: "s3" enum: - value: s3 description: s3 Storage - variable: url label: "url" schema: type: string default: "" required: true - variable: path label: "path" description: "Path Prefix not needed for most cases" schema: type: string default: "" - variable: bucket label: "bucket" schema: show_if: [["type", "=", "s3"]] type: string default: "" required: true - variable: accessKey label: "accessKey" schema: show_if: [["type", "=", "s3"]] type: string default: "" required: true - variable: secretKey label: "secretKey" schema: show_if: [["type", "=", "s3"]] type: string default: "" required: true - variable: encrKey label: "encrKey" description: "The Encryption key is needed for tools like volsync if not needed it will be ignored" schema: show_if: [["type", "=", "s3"]] type: string default: "MYSECRETPASSPHRASE" required: true - variable: workload group: "Workload" 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: timezoneandlocale group: "App Configuration" label: "Timezone and Localization" schema: additional_attrs: true type: dict attrs: - variable: N8N_DEFAULT_LOCALE label: "Default Locale (Leave empty for default)" description: "A locale identifier, compatible with the Accept-Language header." schema: type: string default: "" - variable: deployment group: "App Configuration" label: "Deployment" schema: additional_attrs: true type: dict attrs: - variable: N8N_HOST label: "Host" description: "Host name n8n runs on." schema: type: string required: true default: "" - variable: N8N_EDITOR_BASE_URL label: "Base URL" description: "Public URL where users can access the editor. Also used for emails sent from n8n." schema: type: string default: "" - variable: N8N_CONFIG_FILES label: "Config Files (Leave empty for default)" description: "Use to provide the path to any JSON configuration file(s)" schema: type: string default: "" - variable: N8N_DISABLE_UI label: "Disable UI" description: "Whether the UI should be disabled" schema: type: boolean default: false - variable: N8N_TEMPLATES_ENABLED label: "Enable Templates" description: "Enable workflow templates." schema: type: boolean default: false show_subquestions_if: subquestions: - variable: N8N_TEMPLATES_HOST label: "Templates Host (Leave empty for default)" description: "Change this if creating your own workflow template library." schema: type: string default: "" - variable: N8N_ENCRYPTION_KEY label: "Encryption Key (Leave empty for default)" description: "Provide a custom key used to encrypt credentials in the n8n database. By default a random key is generated on first launch" schema: type: string default: "" - variable: N8N_PERSONALIZATION_ENABLED label: "Enable Personalization" description: "Whether to ask users personalization questions and then customize n8n accordingly" schema: type: boolean default: true - variable: N8N_VERSION_NOTIFICATIONS_ENABLED label: "Enable Version Notifications" description: "When enabled, notifications of new versions and security updates are provided" schema: type: boolean default: true - variable: N8N_DIAGNOSTICS_ENABLED label: "Enable Diagnostics" description: "Whether to share selected, anonymous telemetry with n8n" schema: type: boolean default: false - variable: N8N_HIRING_BANNER_ENABLED label: "Enable Hiring Banner" description: "Whether to show the n8n hiring banner in the console." schema: type: boolean default: false - variable: workflows group: "App Configuration" label: "Workflows" schema: additional_attrs: true type: dict attrs: - variable: WORKFLOWS_DEFAULT_NAME label: "Workflows Default Name (Leave empty for default)" description: "The default name used for new workflows" schema: type: string default: "" - variable: N8N_ONBOARDING_FLOW_DISABLED label: "Enable Onboarding Flow" description: "Whether to show onboarding tips when creating a new workflow." schema: type: boolean default: false - variable: N8N_WORKFLOW_TAGS_DISABLED label: "Disable Workflow Tags" description: "Whether to disable workflow tags." schema: type: boolean default: false - variable: executions group: "App Configuration" label: "Executions" schema: additional_attrs: true type: dict attrs: - variable: EXECUTIONS_PROCESS label: "Execution Process" description: "Whether processes are executed in their own process or the main process" schema: type: string default: "" enum: - value: "" description: "Default" - value: "main" description: "Main" - value: "own" description: "Own" - variable: EXECUTIONS_MODE label: "Execution Mode" description: "Whether processes should run directly or via queue" schema: type: string default: "" enum: - value: "" description: "Default" - value: "regular" description: "Regular" - value: "queue" description: "Queue" - variable: EXECUTIONS_TIMEOUT label: "Execution Timeout (Leave empty for default)" description: "The maximum run time (in seconds) before stopping a workflow execution. Set to -1 to disable." schema: type: int - variable: EXECUTIONS_TIMEOUT_MAX label: "Max Execution Timeout (Leave empty for default)" description: "The max execution time (in seconds) that can be set for a workflow individually" schema: type: int - variable: EXECUTIONS_DATA_SAVE_ON_ERROR label: "Execution Data Save on Error" description: "Whether n8n saves execution data on error." schema: type: string default: "" enum: - value: "" description: "Default" - value: "all" description: "All" - value: "none" description: "None" - variable: EXECUTIONS_DATA_SAVE_ON_SUCCESS label: "Execution Data Save on Success" description: "Whether execution data is saved on success" schema: type: string default: "" enum: - value: "" description: "Default" - value: "all" description: "All" - value: "none" description: "None" - variable: EXECUTIONS_DATA_SAVE_ON_PROGRESS label: "Execution Data Save on Progress" description: "Whether to save progress for each node executed" schema: type: boolean default: false - variable: EXECUTIONS_DATA_SAVE_MANUAL_EXECUTIONS label: "Execution Data Save on Manual Executions" description: "Whether to save data of executions when started manually" schema: type: boolean default: false - variable: EXECUTIONS_DATA_MAX_AGE label: "Execution Data Max Age (Leave empty for default)" description: "The execution age (in hours) before it is deleted" schema: type: int - variable: EXECUTIONS_DATA_PRUNE label: "Execution Data Prune" description: "Whether to delete data of past executions on a rolling basis" schema: type: boolean default: false show_subquestions_if: subquestions: - variable: EXECUTIONS_DATA_PRUNE_TIMEOUT label: "Data Prune Timeout (Leave empty for default)" description: "The timeout (in seconds) after execution data has been pruned" schema: type: int - variable: n8n_security group: "App Configuration" label: "Security" schema: additional_attrs: true type: dict attrs: - variable: N8N_BLOCK_ENV_ACCESS_IN_NODE label: "Block Environment Access in Node" description: "Whether to allow users to access environment variables in expressions and the function node" schema: type: boolean default: false - variable: N8N_BASIC_AUTH_ACTIVE label: "Enable Basic Auth" description: "Whether basic auth should be activated for editor and REST-API access" schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: N8N_BASIC_AUTH_USER label: "Basic Auth User (Leave empty for default)" description: "The name of the n8n user for basic authentication" schema: type: string default: "" - variable: N8N_BASIC_AUTH_PASSWORD label: "Basic Auth Password (Leave empty for default)" description: "The password of the n8n user for basic authentication" schema: type: string default: "" - variable: N8N_BASIC_AUTH_HASH label: "Enable Basic Auth Hash" description: "Whether the basic authentication password is hashed" schema: type: boolean default: false - variable: N8N_JWT_AUTH_ACTIVE label: "Enable JWT Auth" description: "Whether JWT authentication should be activated for editor and REST-API access" schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: N8N_JWT_AUTH_HEADER label: "JWT Auth Header (Leave empty for default)" description: "The request header containing a signed JWT" schema: type: string default: "" - variable: N8N_JWT_AUTH_HEADER_VALUE_PREFIX label: "JWT Auth Header Prefix to strip (Leave empty for default)" description: "Optional. The request header value prefix to strip" schema: type: string default: "" - variable: N8N_JWKS_URI label: "JWT Set URI (Leave empty for default)" description: "The URI to fetch JWK Set for JWT authentication" schema: type: string default: "" - variable: N8N_JWT_ISSUER label: "JWT Issuer (Leave empty for default)" description: "Optional. The expected JWT issuer" schema: type: string default: "" - variable: N8N_JWT_NAMESPACE label: "JWT Namespace (Leave empty for default)" description: "Optional. The expected JWT namespace" schema: type: string default: "" - variable: N8N_JWT_ALLOWED_TENANT label: "JWT Allowed Tenant (Leave empty for default)" description: "Optional. The allowed JWT tenant" schema: type: string default: "" - variable: N8N_JWT_ALLOWED_TENANT_KEY label: "JWT Allowed Tenant Key (Leave empty for default)" description: "Optional. The JWT tenant key name to inspect within the JWT namespace" schema: type: string default: "" - variable: N8N_AUTH_EXCLUDE_ENDPOINTS label: "Additional Endpoints to Exclude Auth Checks (Leave empty for default)" description: "Additional endpoints to exclude auth checks. Multiple endpoints can be provided separated by a colon (\":\"). The endpoints should not start with a forward slash (\"/\")" schema: type: string default: "" - variable: endpoints group: "App Configuration" label: "Endpoints" schema: additional_attrs: true type: dict attrs: - variable: WEBHOOK_URL label: "Webhook URL" description: "Used to manually provide the Webhook URL when running n8n behind a reverse proxy" schema: type: string default: "" - variable: N8N_PAYLOAD_SIZE_MAX label: "Max Payload Size (Leave empty for default)" description: "The maximum payload size in MB" schema: type: int - variable: N8N_METRICS label: "Enable Metrics endpoint" description: "Whether to enable the metrics endpoint" schema: type: boolean default: false show_subquestions_if: subquestions: - variable: N8N_METRICS_PREFIX label: "Metrics Prefix (Leave empty for default)" description: "Optional prefix to be used for metrics names" schema: type: string default: "" - variable: N8N_ENDPOINT_REST label: "Rest Endpoint Path (Leave empty for default)" description: "The path used for REST endpoint" schema: type: string default: "" - variable: N8N_ENDPOINT_WEBHOOK label: "Webhook Endpoint Path (Leave empty for default)" description: "The path used for webhook endpoint" schema: type: string default: "" - variable: N8N_ENDPOINT_WEBHOOK_TEST label: "Test-Webhook Endpoint Path (Leave empty for default)" description: "The path used for test-webhook endpoin" schema: type: string default: "" - variable: N8N_ENDPOINT_WEBHOOK_WAIT label: "Waiting-Webhook Endpoint Path (Leave empty for default)" description: "The path used for waiting-webhook endpoint" schema: type: string default: "" - variable: N8N_DISABLE_PRODUCTION_MAIN_PROCESS label: "Disable Production Webhooks" description: "Disable production webhooks from main process. This helps ensures no HTTP traffic load to main process when using webhook-specific processes" schema: type: boolean default: false - variable: N8N_SKIP_WEBHOOK_DEREGISTRATION_SHUTDOWN label: "Deregister External Webhooks" description: "Deregister webhooks on external services only when workflows are deactivated" schema: type: boolean default: false - variable: credentials group: "App Configuration" label: "Credentials" schema: additional_attrs: true type: dict attrs: - variable: CREDENTIALS_OVERWRITE_DATA label: "Credentials Overwrites (Leave empty for default)" description: "Overwrites for credentials" schema: type: string default: "" - variable: CREDENTIALS_OVERWRITE_ENDPOINT label: "Credentials Overwrite Endpoint (Leave empty for default)" description: "The API endpoint to fetch credentials" schema: type: string default: "" - variable: CREDENTIALS_DEFAULT_NAME label: "Credentials Default Name (Leave empty for default)" description: "The default name for credentials" schema: type: string default: "" - variable: logs group: "App Configuration" label: "Logs" schema: additional_attrs: true type: dict attrs: - variable: N8N_LOG_LEVEL label: "Log Level" description: "Log output level" schema: type: string default: "" enum: - value: "" description: "Default" - value: "info" description: "Info" - value: "warn" description: "Warn" - value: "error" description: "Error" - value: "verbose" description: "Verbose" - value: "debug" description: "Debug" - variable: N8N_LOG_OUTPUT label: "Log Output" description: "Where to output logs" schema: type: string default: "" enum: - value: "" description: "Default" - value: "console" description: "Console" - value: "file" description: "File" - value: "console,file" description: "Console and File" - variable: N8N_LOG_FILE_COUNT_MAX label: "Max Log File Count (Leave empty for default)" description: "Max number of log files to keep" schema: type: int - variable: N8N_LOG_FILE_SIZE_MAX label: "Max Log File Size (Leave empty for default)" description: "Max size of each log file in MB" schema: type: int - variable: externalhooks group: "App Configuration" label: "External Hooks" schema: additional_attrs: true type: dict attrs: - variable: EXTERNAL_HOOK_FILES label: "External Hook Files (Leave empty for default)" description: "Files containing external hooks. Provide multiple files as a colon-separated list ':'." schema: type: string default: "" - variable: usermanagement group: "App Configuration" label: "User Management and SMTP" schema: additional_attrs: true type: dict attrs: - variable: N8N_USER_MANAGEMENT_DISABLED label: "Disable User Management" description: "Set to true to disable the user management feature. Note that n8n ignores this environment variable if you have already set up an owner account." schema: type: boolean default: false - variable: N8N_EMAIL_MODE label: "Email Mode" description: "Enable emails." schema: type: string default: "smtp" - variable: N8N_SMTP_HOST label: "SMTP Host" description: "Your SMTP server name" schema: type: string default: "" - variable: N8N_SMTP_PORT label: "SMTP Port" description: "Your SMTP server port" schema: type: int - variable: N8N_SMTP_USER label: "SMTP User" description: "Your SMTP username" schema: type: string default: "" - variable: N8N_SMTP_PASS label: "SMTP Pass" description: "Your SMTP password" schema: type: string private: true default: "" - variable: N8N_SMTP_SENDER label: "SMTP Sender" description: "You can select the sender name from the sender addresses." schema: type: string default: "" - variable: N8N_SMTP_SSL label: "SMTP SSL" description: "Whether to use SSL for SMTP." schema: type: boolean default: true - variable: N8N_UM_EMAIL_TEMPLATES_INVITE label: "Invite Email Templates (Leave empty for default)" description: "Full path to your HTML email template. This overrides the default template for invite emails." schema: type: string default: "" - variable: N8N_UM_EMAIL_TEMPLATES_PWRESET label: "Password Reset Email Templates (Leave empty for default)" description: "Full path to your HTML email template. This overrides the default template for password reset emails." schema: type: string default: "" - variable: TZ label: Timezone group: "General" schema: type: string default: "Etc/UTC" $ref: - "definitions/timezone" - variable: podOptions group: "General" 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" 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: 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: 5678 required: true - variable: scaleExternalInterface description: 'Add External Interfaces (Experimental, might change or be removed without further notice)' label: Add external Interfaces (Experimental) 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: 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: Persistence schema: additional_attrs: true type: dict attrs: - variable: data label: "App Data Storage" description: "Stores the Application Data." schema: additional_attrs: true type: dict attrs: - variable: type label: Type of Storage description: Sets the persistence type, Anything other than PVC could break rollback! schema: type: string default: pvc enum: - value: pvc description: PVC - value: hostPath description: Host Path - value: emptyDir description: emptyDir - value: nfs description: NFS Share - value: iscsi description: iSCSI Share - variable: server label: NFS Server schema: show_if: [["type", "=", "nfs"]] type: string default: "" - variable: path label: Path on NFS Server schema: show_if: [["type", "=", "nfs"]] type: string default: "" - variable: iscsi label: iSCSI Options schema: show_if: [["type", "=", "iscsi"]] type: dict additional_attrs: true attrs: - variable: targetPortal label: targetPortal schema: type: string required: true default: "" - variable: iqn label: iqn schema: type: string required: true default: "" - variable: lun label: lun schema: type: int default: 0 - variable: authSession label: authSession schema: type: dict additional_attrs: true attrs: - variable: username label: username schema: type: string default: "" - variable: password label: password schema: type: string default: "" - variable: usernameInitiator label: usernameInitiator schema: type: string default: "" - variable: passwordInitiator label: passwordInitiator schema: type: string default: "" - variable: authDiscovery label: authDiscovery schema: type: dict additional_attrs: true attrs: - variable: username label: username schema: type: string default: "" - variable: password label: password schema: type: string default: "" - variable: usernameInitiator label: usernameInitiator schema: type: string default: "" - variable: passwordInitiator label: passwordInitiator schema: type: string default: "" - variable: autoPermissions label: Automatic Permissions Configuration description: Automatically set permissions schema: show_if: [["type", "!=", "pvc"]] type: dict additional_attrs: true attrs: - variable: enabled label: enabled schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: chown label: Run CHOWN description: | It will run CHOWN on the path with the given fsGroup schema: type: boolean default: false - variable: chmod label: Run CHMOD description: | It will run CHMOD on the path with the given value
Format should be 3 digits, e.g. 770 schema: type: string valid_chars: '[0-9]{3}' default: "" - variable: recursive label: Recursive description: | It will run CHOWN and CHMOD recursively schema: type: boolean default: false - variable: readOnly label: Read Only schema: type: boolean default: false - variable: hostPath label: Host Path description: Path inside the container the storage is mounted schema: show_if: [["type", "=", "hostPath"]] type: hostpath - variable: medium label: EmptyDir Medium schema: show_if: [["type", "=", "emptyDir"]] type: string default: "" enum: - value: "" description: Default - value: Memory description: Memory - variable: size label: Size quotum of Storage (Do NOT REDUCE after installation) description: This value can ONLY be INCREASED after the installation schema: show_if: [["type", "=", "pvc"]] type: string default: 256Gi - variable: storageClass label: 'storageClass (Advanced)' description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' schema: show_if: [["type", "=", "pvc"]] type: string default: "" - variable: volsync label: 'VolSync (Experimental)' description: Backup, Restore and Synchronise PVC storage schema: show_if: [["type", "=", "pvc"]] type: list default: [] items: - variable: VolSyncEntry label: VolSync Configuration schema: additional_attrs: true type: dict attrs: - variable: name label: Name description: "Name of backup configuration" schema: type: string default: "" required: true - variable: type label: Type VolSync/Backup description: Sets the VolSync Type schema: type: string default: "restic" enum: - value: restic description: Restic - variable: credentials label: Credentials description: "Name of credentials in the credentials section" schema: type: string default: "" required: true - variable: dest label: VolSync Destination (Restore) description: VolSYnc Destination is the location where data is the reciever and configures recovery of backups schema: additional_attrs: true type: dict attrs: - variable: enabled label: Enable schema: type: boolean default: true - variable: src label: VolSync Source (Backup) description: VolSYnc Source is the location where data is the sender and creates backups to storage schema: additional_attrs: true type: dict attrs: - variable: enabled label: Enable schema: type: boolean default: true - 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: 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: volsync label: 'VolSync (Experimental)' description: Backup, Restore and Synchronise PVC storage schema: show_if: [["type", "=", "pvc"]] type: list default: [] items: - variable: VolSyncEntry label: VolSync Configuration schema: additional_attrs: true type: dict attrs: - variable: name label: Name description: "Name of backup configuration" schema: type: string default: "" required: true - variable: type label: Type VolSync/Backup description: Sets the VolSync Type schema: type: string default: "restic" enum: - value: restic description: Restic - variable: credentials label: Credentials description: "Name of credentials in the credentials section" schema: type: string default: "" required: true - variable: dest label: VolSync Destination (Restore) description: VolSYnc Destination is the location where data is the reciever and configures recovery of backups schema: additional_attrs: true type: dict attrs: - variable: enabled label: Enable schema: type: boolean default: true - variable: src label: VolSync Source (Backup) description: VolSYnc Source is the location where data is the sender and creates backups to storage schema: additional_attrs: true type: dict attrs: - variable: enabled label: Enable schema: type: boolean default: true - 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: 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: 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: SecurityContext label: Security Context schema: additional_attrs: true type: dict attrs: - variable: container label: Container schema: additional_attrs: true type: dict attrs: # Settings from questions.yaml get appended here on a per-app basis - variable: runAsUser label: "runAsUser" description: "The UserID of the user running the application" schema: type: int default: 0 - variable: runAsGroup label: "runAsGroup" description: "The groupID this App of the user running the application" schema: type: int default: 568 # Settings from questions.yaml get appended here on a per-app basis - variable: PUID label: Process User ID - PUID description: When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps schema: type: int show_if: [["runAsUser", "=", 0]] default: 568 - variable: UMASK label: UMASK description: When supported by the container, this sets the UMASK for the App. Not supported by all Apps schema: type: string default: "0022" - variable: advanced label: Show Advanced Settings description: Advanced settings are not covered by TrueCharts Support schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: privileged label: "Privileged mode" schema: type: boolean default: false - variable: readOnlyRootFilesystem label: "ReadOnly Root Filesystem" schema: type: boolean default: true - variable: pod label: Pod schema: additional_attrs: true type: dict attrs: - variable: fsGroupChangePolicy label: "When should we take ownership?" schema: type: string default: OnRootMismatch enum: - value: OnRootMismatch description: OnRootMismatch - value: Always description: Always - variable: supplementalGroups label: Supplemental Groups schema: type: list default: [] items: - variable: supplementalGroupsEntry label: Supplemental Group schema: type: int # Settings from questions.yaml get appended here on a per-app basis - variable: fsGroup label: "fsGroup" description: "The group that should own ALL storage." schema: type: int default: 1000 - variable: resources group: Resources 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: 'gpu.intel.com/i915' label: Add Intel i915 GPUs schema: type: int default: 0 - variable: 'nvidia.com/gpu' label: Add NVIDIA GPUs (Experimental) schema: type: int default: 0 - variable: 'amd.com/gpu' label: Add AMD GPUs schema: type: int default: 0 - 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: 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: cnpg group: Postgresql label: "CloudNative-PG (CNPG)" schema: additional_attrs: true type: dict attrs: - variable: main label: "Main Postgresql Database" schema: additional_attrs: true type: dict attrs: - variable: hibernate label: Hibernate description: "enable to safely hibernate and shutdown the postgresql cluster" schema: type: boolean default: false - variable: mode label: Mode description: 'Cluster mode of operation. Available modes: standalone - default mode. Creates new or updates an existing CNPG cluster. recovery - Same as standalone but creates a cluster from a backup, object store or via pg_basebackup replica - Creates a replica cluster from an existing CNPG cluster. # TODO.' schema: type: string default: "standalone" enum: - value: standalone description: standalone - value: replica description: replica - value: recovery description: recovery - variable: pgVersion label: Postgres Version description: "Set the Postgresql version used" schema: type: int default: 16 required: true - variable: password label: Password description: "Set the password for the database-user" schema: type: string default: "PLACEHOLDERPASSWORD" required: true - variable: cluster label: "Cluster Settings" schema: additional_attrs: true type: dict attrs: - variable: instances label: Instances schema: type: int default: 1 - variable: singleNode label: singleNode schema: type: boolean default: true hidden: true - variable: storage label: "Storage" schema: additional_attrs: true type: dict attrs: - variable: size label: Size schema: type: string default: "256Gi" - variable: walStorage label: "WAL Storage" schema: additional_attrs: true type: dict attrs: - variable: size label: Size schema: type: string default: "256Gi" - variable: monitoring label: "Monitoring Settings" schema: additional_attrs: true type: dict attrs: - variable: enablePodMonitor label: "enablePodMonitor" schema: type: boolean default: true - variable: disableDefaultQueries label: "disableDefaultQueries" schema: type: boolean default: false - variable: pooler label: "Pooler Settings" schema: additional_attrs: true type: dict attrs: - variable: enabled label: Enabled schema: type: boolean default: false - variable: instances label: Instances schema: type: int show_if: [["enabled", "=", true]] default: 1 - variable: createRO label: "Create ReadOnly Instance" schema: type: boolean show_if: [["enabled", "=", true]] default: false - variable: backups label: "Backup Settings (Experimental)" schema: additional_attrs: true type: dict attrs: - variable: enabled label: "enabled" schema: type: boolean default: false - variable: revision label: "revision" schema: type: string default: "" - variable: retentionPolicy label: "retentionPolicy" schema: type: string show_if: [["enabled", "=", true]] default: "30d" - variable: credentials label: "Credentials" description: "Name of the credentials in the credentials section" schema: type: string show_if: [["enabled", "=", true]] default: "" required: true - variable: recovery label: "Recovery Settings (Experimental)" schema: additional_attrs: true type: dict attrs: - variable: enabled label: "enabled" schema: type: boolean default: false - variable: serverName label: "serverName" schema: type: string default: "" - variable: revision label: "revision" schema: type: string default: "" - variable: method label: "method" schema: type: string show_if: [["enabled", "=", true]] default: "object_store" - variable: backupName label: "backupName" schema: type: string show_if: [["enabled", "=", true]] default: "" - variable: credentials label: "Credentials" description: "Name of the credentials in the credentials section" schema: type: string show_if: [["enabled", "=", true]] default: "" required: true # - variable: horizontalPodAutoscaler # group: Experimental # 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: Experimental 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