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: {} 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: 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: imageSelector label: Select Image schema: type: string default: image enum: - value: image description: Java 17 Hotspot - value: j21Image description: Java 21 Hotspot - value: j21graalvmImage description: Java 21 Graalvm - value: j21alpineImage description: Java 21 Alpine - value: j17j9Image description: Java 17 OpenJ9 - value: j17jdkImage description: Java 17 JDK - value: j17graalvmImage description: Java 17 Graalvm - value: j17alpineImage description: Java 17 Alpine - value: j11jdkImage description: Java 11 JDK - value: j11Image description: Java 11 Hotspot - value: j11j9Image description: Java 11 OpenJ9 - value: j8Image description: Java 8 HotSpot - value: j8graalvmImage description: Java 8 GraalVM CE - value: j8jdkImage description: Java 8 JDK - value: j8j9Image description: Java 8 OpenJ9 - variable: env label: Image Environment schema: additional_attrs: true type: dict attrs: - variable: RCON_PASSWORD label: Rcon Password description: This will only have effect in the first installation or always if OVERRIDE_SERVER_PROPERTIES is enabled schema: type: string private: true default: "" - variable: EULA label: Minecraft Eula schema: type: boolean required: true default: false - variable: OVERRIDE_SERVER_PROPERTIES label: Override Server Properties description: Enable this to automatically manage the server.properties in the GUI. schema: type: boolean default: false - variable: VERSION label: Minecraft Version description: Set the Minecraft Version - LATEST, SNAPSHOT, or specific version. schema: type: string required: true default: LATEST - variable: TYPE label: Server Type schema: type: string required: true default: VANILLA enum: - value: VANILLA description: Vanilla - value: FORGE description: Forge - value: NEOFORGE description: NeoForge - value: FABRIC description: Fabric - value: SPIGOT description: Spigot - value: BUKKIT description: Bukkit - value: PAPER description: Paper - value: AIRPLANE description: Airplane - value: PURPUR description: Purpur - value: MAGMA description: Magma - value: MOHIST description: Mohist - value: CATSERVER description: Catserver - value: CANYON description: Canyon - value: SPONGEVANILLA description: Sponge Vanilla - value: LIMBO description: Limbo - value: CRUCIBLE description: Crucible - value: FTBA description: FTBA - value: CURSEFORGE description: Curseforge - value: AUTO_CURSEFORGE description: Auto CurseForge - value: QUILT description: Quilt - value: PUFFERFISH description: Pufferfish - value: CUSTOM description: Custom - variable: PACKWIZ_URL label: Packwiz URL schema: type: string default: "" show_if: [[TYPE, "!=", "VANILLA"]] - variable: CUSTOM_SERVER label: Custom Server description: URL or a container path to an existing JAR file, will ONLY download once. schema: type: string default: "" show_if: [[TYPE, "=", "CUSTOM"]] - variable: QUILT_LOADER_VERSION label: Quilt loader version schema: type: string default: "0.16.0" show_if: [[TYPE, "=", "QUILT"]] - variable: QUILT_INSTALLER_VERSION label: Quilt installer version schema: type: string default: "0.4.1" show_if: [[TYPE, "=", "QUILT"]] - variable: QUILT_LAUNCHER label: Quilt launcher description: Path to a custom launcher jar available to the container relative to /data. schema: type: string default: "" show_if: [[TYPE, "=", "QUILT"]] - variable: QUILT_LAUNCHER_URL label: Quilt launcher url description: URL to a custom launcher jar schema: type: string default: "" show_if: [[TYPE, "=", "QUILT"]] - variable: PUFFERFISH_BUILD label: Pufferfish build description: "To set the actual SERVER VERSION number set the value as 'build xx' for example xx is 50. set the 'Version' variable as a single branch instead like 'latest' or '1.18' or '1.17'" schema: type: string default: lastSuccessfulBuild show_if: [[TYPE, "=", "PUFFERFISH"]] - variable: FORGEVERSION label: Forge Version schema: type: string default: "" show_if: [[TYPE, "=", "FORGE"]] - variable: FORGE_INSTALLER label: Forge Installer schema: type: string default: "" show_if: [[TYPE, "=", "FORGE"]] - variable: FORGE_INSTALLER_URL label: Forge Installer URL schema: type: string default: "" show_if: [[TYPE, "=", "FORGE"]] - variable: NEOFORGE_VERSION label: NeoForge Version schema: type: string default: "47.1.79" show_if: [[TYPE, "=", "NEOFORGE"]] - variable: FABRIC_LOADER_VERSION label: Fabric Loader Version schema: type: string default: "" show_if: [[TYPE, "=", "FABRIC"]] - variable: FABRIC_INSTALLER label: Fabric Installer schema: type: string default: "" show_if: [[TYPE, "=", "FABRIC"]] - variable: FABRIC_INSTALLER_URL label: Fabric Installer URL schema: type: string default: "" show_if: [[TYPE, "=", "FABRIC"]] - variable: SPIGOT_DOWNLOAD_URL label: Spigot Download URL schema: type: string default: "" show_if: [[TYPE, "=", "SPIGOT"]] - variable: BUILD_FROM_SOURCE label: Build Spigot from Source? schema: type: boolean default: false show_if: [[TYPE, "=", "SPIGOT"]] - variable: BUKKIT_DOWNLOAD_URL label: Bukkit Download URL schema: type: string default: "" show_if: [[TYPE, "=", "BUKKIT"]] - variable: PAPERBUILD label: Paper Build Number schema: type: string default: "" show_if: [[TYPE, "=", "PAPER"]] - variable: PAPER_DOWNLOAD_URL label: Paper Download URL schema: type: string default: "" show_if: [[TYPE, "=", "PAPER"]] - variable: AIRPLANE_BUILD label: Airplane Build schema: type: string default: lastSuccessfulBuild show_if: [[TYPE, "=", "AIRPLANE"]] - variable: MAGMA_CHANNEL label: Magma Channel schema: type: string default: stable show_if: [[TYPE, "=", "MAGMA"]] - variable: MOHIST_BUILD label: Mohist Build schema: type: string default: "" show_if: [[TYPE, "=", "MOHIST"]] - variable: CANYON_BUILD label: Canyon Build schema: type: string default: "" show_if: [[TYPE, "=", "CANYON"]] - variable: SPONGEBRANCH label: Sponge Branch schema: type: string default: STABLE show_if: [[TYPE, "=", "SPONGEVANILLA"]] - variable: SPONGEVERSION label: Sponge Version schema: type: string default: "" show_if: [[TYPE, "=", "SPONGEVANILLA"]] - variable: LIMBO_BUILD label: Limbo Build schema: type: string default: LATEST show_if: [[TYPE, "=", "LIMBO"]] - variable: LIMBO_SCHEMA_FILENAME label: Limbo Schema Filename schema: type: string default: default.schem show_if: [[TYPE, "=", "LIMBO"]] - variable: CRUCIBLE_RELEASE label: Crucible Release schema: type: string default: latest show_if: [[TYPE, "=", "CRUCIBLE"]] - variable: FTB_MODPACK_ID label: FTB Modpack ID schema: type: string default: "" show_if: [[TYPE, "=", "FTBA"]] - variable: FTB_MODPACK_VERSION_ID label: FTB Modpack Version ID schema: type: string default: "" show_if: [[TYPE, "=", "FTBA"]] - variable: CF_SERVER_MOD label: CF Server Mod schema: type: string default: "" show_if: [[TYPE, "=", "CURSEFORGE"]] - variable: CF_BASE_DIR label: CF Base Dir schema: type: string default: "" show_if: [[TYPE, "=", "CURSEFORGE"]] - variable: USE_MODPACK_START_SCRIPT label: Use Modpack Start Script schema: type: boolean default: true show_if: [[TYPE, "=", "CURSEFORGE"]] - variable: FTB_LEGACYJAVAFIXER label: Fix for schema: type: boolean default: false show_if: [[TYPE, "=", "CURSEFORGE"]] - variable: CF_API_KEY label: CF API Key schema: type: string default: "" show_if: [[TYPE, "=", "AUTO_CURSEFORGE"]] - variable: CF_PAGE_URL label: CF modpack page URL schema: type: string default: "" show_if: [[TYPE, "=", "AUTO_CURSEFORGE"]] - variable: CF_SLUG label: CF modpack slug schema: type: string default: "" show_if: [[TYPE, "=", "AUTO_CURSEFORGE"]] - variable: modpack_exclusions label: Configure modpack exclusions schema: type: boolean default: false show_if: [[TYPE, "=", "AUTO_CURSEFORGE"]] show_subquestions_if: true subquestions: - variable: CF_EXCLUDE_INCLUDE_FILE label: JSON file path schema: type: string - variable: CF_EXCLUDE_MODS label: List of project slugs or IDs to exclude description: "Comma or space delimited list" schema: type: string default: "" - variable: CF_FORCE_INCLUDE_MODS label: List of project slugs or IDs to force include description: "Comma or space delimited list" schema: type: string default: "" - variable: CF_FORCE_SYNCHRONIZE label: Check to ensure the exclude/includes are re-evaluated schema: type: boolean default: false - variable: advanced_auto_curseforge label: Advanced Auto CurseForge configurations schema: type: boolean default: false show_if: [[TYPE, "=", "AUTO_CURSEFORGE"]] show_subquestions_if: true subquestions: - variable: CF_OVERRIDES_SKIP_EXISTING label: Skip files in the overrides that already exist in the data directory schema: type: boolean default: false - variable: CF_PARALLEL_DOWNLOADS label: How many parallel mod downloads to perform schema: type: int default: 4 - variable: CF_SET_LEVEL_FROM label: Saves directory description: "Some modpacks come with world/save data via a worlds file and/or the overrides provided with the modpack. Either approach can be selected to set the LEVEL to the resulting saves directory." schema: type: string default: "" enum: - value: "" description: Default - value: WORLD_FILE description: World File - value: OVERRIDES description: Overrides - variable: DIFFICULTY label: Difficulty schema: type: string required: true default: easy enum: - value: peaceful description: Peaceful - value: easy description: Easy - value: normal description: Normal - value: hard description: Hard - variable: WHITELIST label: Whitelist schema: type: string default: "" - variable: OPS label: OPs schema: type: string default: "" - variable: ICON label: URL to Server Icon schema: type: string default: "" - variable: MAX_PLAYERS label: Max Connected Players schema: type: int required: true default: 20 - variable: MAX_WORLD_SIZE label: World Border Radius in blocks schema: type: int required: true default: 10000 - variable: ALLOW_NETHER label: Enable Nether schema: type: boolean default: true - variable: ANNOUNCE_PLAYER_ACHIEVEMENTS label: Enable Announcing Player Achievements schema: type: boolean default: true - variable: ENABLE_COMMAND_BLOCK label: Enable Command Blocks schema: type: boolean default: false - variable: FORCE_GAMEMODE label: Enable Force Game Mode schema: type: boolean default: false - variable: GENERATE_STRUCTURES label: Enable Generate Structures schema: type: boolean default: true - variable: HARDCORE label: Enable Hardcore Mode description: If set to true, players will be set to spectator mode if they die. schema: type: boolean default: false - variable: MAX_BUILD_HEIGHT label: Max World Build Height schema: type: int required: true default: 256 - variable: MAX_TICK_TIME label: Max Tick Time schema: type: int required: true default: 60000 - variable: SPAWN_ANIMALS label: Enable Spawning Animals schema: type: boolean default: true - variable: SPAWN_MONSTERS label: Enable Spawning Monsters schema: type: boolean default: true - variable: SPAWN_NPCS label: Enable Spawning NPCs schema: type: boolean default: true - variable: VIEW_DISTANCE label: Server View Distance schema: type: int required: true default: 10 - variable: SEED label: Level Seed schema: type: string default: "" - variable: MODE label: Default Gamemode schema: type: string required: true default: survival enum: - value: survival description: Survival - value: creative description: Creative - value: adventure description: Adventure - value: spectator description: Spectator - variable: MOTD label: Server Message of the Day schema: type: string default: Welcome to Minecraft on TrueNAS Scale! - variable: PVP label: Enable PVP schema: type: boolean default: false - variable: LEVEL_TYPE label: Level Type schema: type: string required: true default: DEFAULT - variable: GENERATOR_SETTINGS label: Generator Settings schema: type: string default: "" - variable: LEVEL label: World Save Name schema: type: string required: true default: world - variable: WORLD label: URL of world download schema: type: string default: "" - variable: FORCE_REDOWNLOAD label: Force redownload server files description: Force re-download of the server file for VANILLA, FORGE, BUKKIT, SPIGOT, PAPER, CURSEFORGE, SPONGEVANILLA server types. schema: type: string default: "false" enum: - value: "false" description: "False" - value: "true" description: "True" - variable: ONLINE_MODE label: Enable Online Mode schema: type: boolean default: true - variable: USE_FLARE_FLAGS label: Use Flare Flags description: Enable to add appropriate flags for the Flare profiler on selected server types - https://github.com/itzg/docker-minecraft-server#enable-flare-flags schema: type: boolean default: false - variable: USE_AIKAR_FLAGS label: Use Aikar Flags description: Optimal JVM flags for GC tuning. schema: type: boolean default: true - variable: USE_SIMD_FLAGS label: Use SIMD Flags description: Enable support for optimized SIMD operations. schema: type: boolean default: false - variable: advanced label: Show Advanced Server Settings schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: MEMORY label: Server Memory schema: type: string required: true default: 2048M - variable: JVM_OPTS label: JVM Options schema: type: string default: "" - variable: JVM_XX_OPTS label: JVM -X Options schema: type: string default: "" - variable: envList label: Extra Environment Variables description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." schema: type: list default: [] items: - variable: envItem label: Environment Variable schema: additional_attrs: true type: dict attrs: - variable: name label: Name schema: type: string - variable: value label: Value schema: type: string - variable: extraArgs label: Extra Args schema: type: list default: [] items: - variable: arg label: Arg schema: type: string - variable: advanced label: Show Advanced Settings description: Advanced settings are not covered by TrueCharts Support schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: command label: Command schema: type: list default: [] items: - variable: param label: Param schema: type: string - variable: mcbackup group: App Configuration label: MC Backup Configuration schema: additional_attrs: true type: dict attrs: - variable: enabled label: Enable MC Backup Container schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: initial_delay label: Initial Delay schema: type: string default: 2m - variable: backup_interval label: Backup Interval schema: type: string default: 24h - variable: player_online_check_interval label: Player Online Check Interval schema: type: string default: 5m - variable: prune_backups_days label: Prune Backups Days schema: type: int default: 7 - variable: pause_if_no_players label: Pause If No Players schema: type: boolean default: false - variable: link_latest label: Link Latest description: Creates a symbolic link to the latest backup. schema: type: boolean default: false - variable: tar_compress_method label: Tar Compress Method schema: type: string default: gzip enum: - value: gzip description: Gzip - value: bzip2 description: Bzip2 - value: zstd description: Zstd - variable: zstd_params label: ZSTD Params schema: type: list empty: false default: - --long=25 - --single-thread required: true items: - variable: param label: Param schema: type: string required: true default: "" - variable: excludes label: Excludes schema: type: list empty: false default: - "*.jar" - "cache" - "logs" - "*.tmp" required: true items: - variable: exclude label: Exclude schema: type: string required: true 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 Minecraft Server runs on 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: 25565 required: true - variable: query label: Query 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: 25565 required: true - variable: rcon label: RCON Service description: The RCON service. schema: additional_attrs: true type: dict attrs: - variable: enabled label: Enable the Service schema: type: boolean default: true hidden: true - variable: type label: Service Type description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" schema: type: string default: 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: rcon label: RCON 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: 25575 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: static label: 'Static Fixed PVC Bindings (Experimental)' description: Link a PVC to a specific storage location schema: show_if: [["type", "=", "pvc"]] type: dict additional_attrs: true attrs: - variable: mode label: mode description: | disabled: use normal dynamic PVCs smb: connect to an SMB share nfs: connect to an NFS share schema: type: string default: "disabled" enum: - value: disabled description: disabled - value: smb description: smb - value: nfs description: nfs - variable: server label: Server description: server to connect to schema: type: string show_if: [["mode", "!=", "disabled"]] default: "myserver" - variable: share label: Share description: share to connect to schema: type: string show_if: [["mode", "!=", "disabled"]] default: "/myshare" - variable: user label: User description: connecting user schema: type: string show_if: [["mode", "=", "smb"]] default: "myuser" - variable: domain label: Domain description: user domain schema: type: string show_if: [["mode", "=", "smb"]] default: "" - variable: password label: Password description: connecting password schema: type: string show_if: [["mode", "=", "smb"]] default: "" - variable: volumeSnapshots label: 'Volume Snapshots (Experimental)' description: Add an entry to the list to force creation of a volumeSnapshot of this PVC schema: show_if: [["type", "=", "pvc"]] type: list default: [] items: - variable: volumeSnapshotEntry label: Custom volumeSnapshot schema: additional_attrs: true type: dict attrs: - variable: name label: Name description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' schema: type: string default: "mysnapshot" required: true - variable: volumeSnapshotClassName label: 'volumeSnapshot Class Name (Advanced)' description: For use with PVCs using a non-default storageClass schema: type: string default: "" - variable: backups label: App Backups Storage description: Stores the Application Backups. schema: additional_attrs: true type: dict attrs: - variable: type label: Type of Storage description: Sets the persistence type, Anything other than PVC could break rollback! schema: type: string default: pvc enum: - value: pvc description: PVC - value: hostPath description: Host Path - value: emptyDir description: emptyDir - value: nfs description: NFS Share - value: iscsi description: iSCSI Share - variable: server label: NFS Server schema: show_if: [["type", "=", "nfs"]] type: string default: "" - variable: path label: Path on NFS Server schema: show_if: [["type", "=", "nfs"]] type: string default: "" - variable: iscsi label: iSCSI Options schema: show_if: [["type", "=", "iscsi"]] type: dict additional_attrs: true attrs: - variable: targetPortal label: targetPortal schema: type: string required: true default: "" - variable: iqn label: iqn schema: type: string required: true default: "" - variable: lun label: lun schema: type: int default: 0 - variable: authSession label: authSession schema: type: dict additional_attrs: true attrs: - variable: username label: username schema: type: string default: "" - variable: password label: password schema: type: string default: "" - variable: usernameInitiator label: usernameInitiator schema: type: string default: "" - variable: passwordInitiator label: passwordInitiator schema: type: string default: "" - variable: authDiscovery label: authDiscovery schema: type: dict additional_attrs: true attrs: - variable: username label: username schema: type: string default: "" - variable: password label: password schema: type: string default: "" - variable: usernameInitiator label: usernameInitiator schema: type: string default: "" - variable: passwordInitiator label: passwordInitiator schema: type: string default: "" - variable: autoPermissions label: Automatic Permissions Configuration description: Automatically set permissions schema: show_if: [["type", "!=", "pvc"]] type: dict additional_attrs: true attrs: - variable: enabled label: enabled schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: chown label: Run CHOWN description: | It will run CHOWN on the path with the given fsGroup schema: type: boolean default: false - variable: chmod label: Run CHMOD description: | It will run CHMOD on the path with the given value
Format should be 3 digits, e.g. 770 schema: type: string valid_chars: '[0-9]{3}' default: "" - variable: recursive label: Recursive description: | It will run CHOWN and CHMOD recursively schema: type: boolean default: false - variable: readOnly label: Read Only schema: type: boolean default: false - variable: hostPath label: Host Path description: Path inside the container the storage is mounted schema: show_if: [["type", "=", "hostPath"]] type: hostpath - variable: medium label: EmptyDir Medium schema: show_if: [["type", "=", "emptyDir"]] type: string default: "" enum: - value: "" description: Default - value: Memory description: Memory - variable: size label: Size quotum of Storage (Do NOT REDUCE after installation) description: This value can ONLY be INCREASED after the installation schema: show_if: [["type", "=", "pvc"]] type: string default: 256Gi - variable: storageClass label: 'storageClass (Advanced)' description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' schema: show_if: [["type", "=", "pvc"]] type: string default: "" - variable: static label: 'Static Fixed PVC Bindings (Experimental)' description: Link a PVC to a specific storage location schema: show_if: [["type", "=", "pvc"]] type: dict additional_attrs: true attrs: - variable: mode label: mode description: | disabled: use normal dynamic PVCs smb: connect to an SMB share nfs: connect to an NFS share schema: type: string default: "disabled" enum: - value: disabled description: disabled - value: smb description: smb - value: nfs description: nfs - variable: server label: Server description: server to connect to schema: type: string show_if: [["mode", "!=", "disabled"]] default: "myserver" - variable: share label: Share description: share to connect to schema: type: string show_if: [["mode", "!=", "disabled"]] default: "/myshare" - variable: user label: User description: connecting user schema: type: string show_if: [["mode", "=", "smb"]] default: "myuser" - variable: domain label: Domain description: user domain schema: type: string show_if: [["mode", "=", "smb"]] default: "" - variable: password label: Password description: connecting password schema: type: string show_if: [["mode", "=", "smb"]] default: "" - variable: volumeSnapshots label: 'Volume Snapshots (Experimental)' description: Add an entry to the list to force creation of a volumeSnapshot of this PVC schema: show_if: [["type", "=", "pvc"]] type: list default: [] items: - variable: volumeSnapshotEntry label: Custom volumeSnapshot schema: additional_attrs: true type: dict attrs: - variable: name label: Name description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' schema: type: string default: "mysnapshot" required: true - variable: volumeSnapshotClassName label: 'volumeSnapshot Class Name (Advanced)' description: For use with PVCs using a non-default storageClass schema: type: string default: "" - variable: persistenceList label: Additional App Storage group: 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: 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: 568 - variable: runAsGroup label: "runAsGroup" description: "The groupID of the user running the application" schema: type: int default: 568 # Settings from questions.yaml get appended here on a per-app basis - variable: PUID label: Process User ID - PUID description: When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps schema: type: int show_if: [["runAsUser", "=", 0]] default: 568 - variable: UMASK label: UMASK description: When supported by the container, this sets the UMASK for the App. Not supported by all Apps schema: type: string default: "0022" - variable: advanced label: Show Advanced Settings description: Advanced settings are not covered by TrueCharts Support schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: privileged label: "Privileged mode" schema: type: boolean default: false - variable: readOnlyRootFilesystem label: "ReadOnly Root Filesystem" schema: type: boolean default: true - variable: pod label: Pod schema: additional_attrs: true type: dict attrs: - variable: fsGroupChangePolicy label: "When should we take ownership?" schema: type: string default: OnRootMismatch enum: - value: OnRootMismatch description: OnRootMismatch - value: Always description: Always - variable: supplementalGroups label: Supplemental Groups schema: type: list default: [] items: - variable: supplementalGroupsEntry label: Supplemental Group schema: type: int # Settings from questions.yaml get appended here on a per-app basis - variable: fsGroup label: "fsGroup" description: "The group that should own ALL storage." schema: type: int default: 568 - variable: resources group: Resources 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: 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