From c5bdfd6fead9d561a99914a20185d4cc397493be Mon Sep 17 00:00:00 2001 From: Kjeld Schouten Date: Tue, 13 Feb 2024 14:53:27 +0100 Subject: [PATCH] Delete incubator/palworld directory --- incubator/palworld/0.1.5/CHANGELOG.md | 31 - incubator/palworld/0.1.5/Chart.yaml | 38 - incubator/palworld/0.1.5/README.md | 28 - incubator/palworld/0.1.5/app-changelog.md | 3 - incubator/palworld/0.1.5/app-readme.md | 8 - .../palworld/0.1.5/charts/common-17.2.26.tgz | Bin 97960 -> 0 bytes incubator/palworld/0.1.5/ix_values.yaml | 357 -- incubator/palworld/0.1.5/questions.yaml | 2947 ----------------- incubator/palworld/0.1.5/templates/NOTES.txt | 1 - .../palworld/0.1.5/templates/_configmap.tpl | 18 - .../palworld/0.1.5/templates/common.yaml | 17 - incubator/palworld/0.1.5/values.yaml | 0 incubator/palworld/item.yaml | 4 - 13 files changed, 3452 deletions(-) delete mode 100644 incubator/palworld/0.1.5/CHANGELOG.md delete mode 100644 incubator/palworld/0.1.5/Chart.yaml delete mode 100644 incubator/palworld/0.1.5/README.md delete mode 100644 incubator/palworld/0.1.5/app-changelog.md delete mode 100644 incubator/palworld/0.1.5/app-readme.md delete mode 100644 incubator/palworld/0.1.5/charts/common-17.2.26.tgz delete mode 100644 incubator/palworld/0.1.5/ix_values.yaml delete mode 100644 incubator/palworld/0.1.5/questions.yaml delete mode 100644 incubator/palworld/0.1.5/templates/NOTES.txt delete mode 100644 incubator/palworld/0.1.5/templates/_configmap.tpl delete mode 100644 incubator/palworld/0.1.5/templates/common.yaml delete mode 100644 incubator/palworld/0.1.5/values.yaml delete mode 100644 incubator/palworld/item.yaml diff --git a/incubator/palworld/0.1.5/CHANGELOG.md b/incubator/palworld/0.1.5/CHANGELOG.md deleted file mode 100644 index 364552fa50..0000000000 --- a/incubator/palworld/0.1.5/CHANGELOG.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: Changelog ---- - -**Important:** -*for the complete changelog, please refer to the website* - - - -## [palworld-0.1.5](https://github.com/truecharts/charts/compare/palworld-0.1.4...palworld-0.1.5) (2024-02-05) - - -## [palworld-0.1.4](https://github.com/truecharts/charts/compare/palworld-0.1.3...palworld-0.1.4) (2024-02-04) - - -## [palworld-0.1.3](https://github.com/truecharts/charts/compare/palworld-0.1.2...palworld-0.1.3) (2024-02-01) - - -## [palworld-0.1.2](https://github.com/truecharts/charts/compare/palworld-0.1.1...palworld-0.1.2) (2024-02-01) - - -## [palworld-0.1.1](https://github.com/truecharts/charts/compare/palworld-0.1.0...palworld-0.1.1) (2024-01-29) - - -## [palworld-0.1.0](https://github.com/truecharts/charts/compare/palworld-0.0.2...palworld-0.1.0) (2024-01-28) - - -## [palworld-0.0.2](https://github.com/truecharts/charts/compare/palworld-0.0.1...palworld-0.0.2) (2024-01-27) - - -## [palworld-0.0.1]palworld-0.0.1 (2024-01-24) \ No newline at end of file diff --git a/incubator/palworld/0.1.5/Chart.yaml b/incubator/palworld/0.1.5/Chart.yaml deleted file mode 100644 index 12faa58d9f..0000000000 --- a/incubator/palworld/0.1.5/Chart.yaml +++ /dev/null @@ -1,38 +0,0 @@ -annotations: - max_scale_version: 23.10.2 - min_scale_version: 23.10.0 - truecharts.org/SCALE-support: "true" - truecharts.org/category: GameServers - truecharts.org/max_helm_version: "3.14" - truecharts.org/min_helm_version: "3.12" - truecharts.org/train: incubator -apiVersion: v2 -appVersion: palworld -dependencies: - - name: common - version: 17.2.26 - repository: oci://tccr.io/truecharts - condition: "" - alias: "" - tags: [] - import-values: [] -deprecated: false -description: A custom SteamCMD chart that runs Palworld. -home: https://truecharts.org/charts/incubator/palworld -icon: https://truecharts.org/img/hotlink-ok/chart-icons/palworld.png -keywords: - - palworld - - GameServers -kubeVersion: ">=1.24.0-0" -maintainers: - - name: TrueCharts - email: info@truecharts.org - url: https://truecharts.org -name: palworld -sources: - - https://github.com/ich777/docker-steamcmd-server/tree/palworld - - https://github.com/truecharts/charts/tree/master/charts/incubator/palworld - - https://ghcr.io/ich777/steamcmd - - https://hub.docker.com/r/outdead/rcon -type: application -version: 0.1.5 diff --git a/incubator/palworld/0.1.5/README.md b/incubator/palworld/0.1.5/README.md deleted file mode 100644 index f9d51de847..0000000000 --- a/incubator/palworld/0.1.5/README.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: README ---- - -## General Info - -TrueCharts can be installed as both _normal_ Helm Charts or as Apps on TrueNAS SCALE. -However only installations using the TrueNAS SCALE Apps system are supported. - -For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/incubator/palworld) - -**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** - -## Support - -- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro). -- See the [Website](https://truecharts.org) -- Check our [Discord](https://discord.gg/tVsPTHWTtr) -- Open a [issue](https://github.com/truecharts/charts/issues/new/choose) - ---- - -## Sponsor TrueCharts - -TrueCharts can only exist due to the incredible effort of our staff. -Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! - -_All Rights Reserved - The TrueCharts Project_ diff --git a/incubator/palworld/0.1.5/app-changelog.md b/incubator/palworld/0.1.5/app-changelog.md deleted file mode 100644 index e205006b67..0000000000 --- a/incubator/palworld/0.1.5/app-changelog.md +++ /dev/null @@ -1,3 +0,0 @@ - - -## [palworld-0.1.5](https://github.com/truecharts/charts/compare/palworld-0.1.4...palworld-0.1.5) (2024-02-05) \ No newline at end of file diff --git a/incubator/palworld/0.1.5/app-readme.md b/incubator/palworld/0.1.5/app-readme.md deleted file mode 100644 index 66f4885d6b..0000000000 --- a/incubator/palworld/0.1.5/app-readme.md +++ /dev/null @@ -1,8 +0,0 @@ -A custom SteamCMD chart that runs Palworld. - -This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/incubator/palworld](https://truecharts.org/charts/incubator/palworld) - ---- - -TrueCharts can only exist due to the incredible effort of our staff. -Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! diff --git a/incubator/palworld/0.1.5/charts/common-17.2.26.tgz b/incubator/palworld/0.1.5/charts/common-17.2.26.tgz deleted file mode 100644 index e5258f6f3129524d5434c8a1ff4b4a1e6c82fde9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 97960 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 ba+5Y`lQ!uyO#goX00960fEe!O089)3&)c^G diff --git a/incubator/palworld/0.1.5/ix_values.yaml b/incubator/palworld/0.1.5/ix_values.yaml deleted file mode 100644 index 3d3d36bdf5..0000000000 --- a/incubator/palworld/0.1.5/ix_values.yaml +++ /dev/null @@ -1,357 +0,0 @@ -image: - repository: ghcr.io/ich777/steamcmd - pullPolicy: IfNotPresent - tag: palworld@sha256:c7ed87dfb13890f340d663ca0a97acb6a8b83a40ab81a9c94c8675cee03af325 -rconImage: - repository: outdead/rcon - pullPolicy: IfNotPresent - tag: latest@sha256:8bf03935771ae6b44449eb8e74e1f4d249ead591e9c1e4e43539d33be1a3ac67 - -securityContext: - container: - readOnlyRootFilesystem: false - runAsUser: 0 - runAsGroup: 0 - -service: - main: - ports: - main: - protocol: udp - port: 8211 - rcon: - enabled: true - ports: - rcon: - enabled: true - protocol: tcp - port: 25575 - -palworld: - steam: - id: "2394010" - username: "" - password: "" - validate: false - game: - name: "TrueCharts Palworld Server" - description: "A Palworld Server running in Kubernetes" - use_auth: true - password: "" - admin_password: "" - auto_reset_guild_time_no_online_players: "72.000000" - ban_list_url: "https://api.palworldgame.com/api/banlist.txt" - base_camp_max: 128 - base_camp_worker_max: 15 - build_object_damage_rate: "1.000000" - build_object_deterioration_damage_rate: "1.000000" - can_pickup_other_guild_death_penalty_drop: false - collection_drop_rate: "1.000000" - collection_object_hp_rate: "1.000000" - collection_object_respawn_speed_rate: "1.000000" - day_time_speed_rate: "1.000000" - death_penalty: "ALL" - difficulty: "None" - drop_item_alive_max_hours: "1.000000" - drop_item_max: 3000 - drop_item_max_unko: 100 - enable_aim_assist_kb: false - enable_aim_assist_pad: false - enable_defense_other_guild_player: true - enable_fast_travel: true - enable_friendly_fire: false - enable_invader_enemy: true - active_unko: false - enable_non_login_penalty: true - enable_pvp_damage: false - exist_players_after_logout: true - enemy_drop_item_rate: "1.000000" - exp_rate: "1.000000" - guild_auto_reset_no_online_players: false - is_multiplay: false - is_pvp: false - is_start_location_select_by_map: true - max_players: 32 - max_players_coop: 4 - max_players_guild: 20 - night_time_speed_rate: "1.000000" - pal_auto_hp_regene_rate: "1.000000" - pal_auto_hp_regene_rate_in_sleep: "1.000000" - pal_capture_rate: "1.000000" - pal_damage_rate_attack: "1.000000" - pal_damage_rate_defense: "1.000000" - pal_egg_default_hatching_time: "72.000000" - pal_spawn_num_rate: "1.000000" - pal_stamina_decreace_rate: "1.000000" - pal_stomach_decreace_rate: "1.000000" - player_auto_hp_regene_rate: "1.000000" - player_auto_hp_regene_rate_in_sleep: "1.000000" - player_damage_rate_attack: "1.000000" - player_damage_rate_defense: "1.000000" - player_stamina_decreace_rate: "1.000000" - player_stomach_decreace_rate: "1.000000" - region: "" - work_speed_rate: "1.000000" - update_public_ip: false - public_ip: "" - params: - - EpicApp=PalServer - params_extra: - - -useperfthreads - - -NoAsyncLoadingThread - - -UseMultithreadForDS - backup: - enabled: true - interval: 120 - to_keep: 12 - rcon: - enabled: true - timeout: 10s - -workload: - main: - podSpec: - initContainers: - update-config-ini: - enabled: true - type: init - imageSelector: "image" - command: - - /bin/sh - - -c - args: - - | - config={{ .Values.persistence.serverfiles.targetSelector.main.main.mountPath }}/Pal/Saved/Config/LinuxServer - cfgFile=${config}/PalWorldSettings.ini - dfCfgFile={{ .Values.persistence.serverfiles.targetSelector.main.main.mountPath }}/DefaultPalWorldSettings.ini - update_public_ip="{{ .Values.palworld.game.update_public_ip }}" - - mkdir -p ${config} - if [ ! -f "${cfgFile}" ]; then - if [ -f "${dfCfgFile}" ]; then - echo "Default config file found, copying as cfgFile..." - cp "${dfCfgFile}" "${cfgFile}" - else - echo "Config file not found, fetching..." - # Fetch the config file if it doesn't exist, just like the container does - wget -qO "${cfgFile}" https://github.com/ich777/docker-steamcmd-server/raw/palworld/config/PalWorldSettings.ini - fi - fi - - set_ini() { - local key="${1}" - local value="${2}" - local flags="" # Initialize an empty string for flags - - # Loop through arguments starting from the third one - for arg in "$@"; do - if [ "$arg" != "$key" ] && [ "$arg" != "$value" ]; then - flags="$flags $arg" # Append each flag to the flags string - fi - done - - # Check if the key exists in the OptionSettings section - if ! grep -q 'OptionSettings=(' "$cfgFile"; then - echo "OptionSettings section not found in '${cfgFile}'. Skipping..." - return - fi - - # Check if the key exists within the OptionSettings section - if ! grep -q "${key}=" "$cfgFile"; then - echo "Key '${key}' does not exist in the OptionSettings section of '${cfgFile}'. Skipping..." - return - fi - - # Iterate over flags - for flag in $flags; do - case $flag in - -q) - # Add quotes around the value - value="\"$value\"" - ;; - -b) - # Handle boolean flag - if [ "$(echo "$value" | tr '[:upper:]' '[:lower:]')" = "true" ]; then - value="True" - else - value="False" - fi - ;; - *) - echo "Unknown flag: $flag. Skipping..." - ;; - esac - done - - # Update the value within the OptionSettings section - sed -i "/OptionSettings=(/ { - :loop - /)$/! { - N - b loop - } - s|\(${key}=\)[^,]*|\1${value}| - }" "${cfgFile}" - - # Check if the closing parenthesis is missing, and if so, add it - if ! grep -q ')$' "${cfgFile}"; then - sed -i "\|OptionSettings=(| s|$|)|" "${cfgFile}" - fi - - echo "Set ${key} to ${value}" - } - - echo "the following options are updating...." - - set_ini "RCONEnabled" "True" -b - - set_ini "RCONPort" "{{ .Values.service.rcon.ports.rcon.port }}" - set_ini "PublicPort" "{{ .Values.service.main.ports.main.port }}" - - set_ini "ServerPassword" '{{ .Values.palworld.game.password }}' -q - set_ini "AdminPassword" '{{ .Values.palworld.game.admin_password }}' -q - - set_ini "ServerName" '{{ .Values.palworld.game.name }}' -q - set_ini "ServerDescription" '{{ .Values.palworld.game.description }}' -q - set_ini "Difficulty" "{{ .Values.palworld.game.difficulty }}" -q - set_ini "DeathPenalty" "{{ .Values.palworld.game.death_penalty }}" -q - set_ini "Region" "{{ .Values.palworld.game.region }}" -q - - set_ini "AutoResetGuildTimeNoOnlinePlayers" "{{ .Values.palworld.game.auto_reset_guild_time_no_online_players }}" - set_ini "BaseCampMaxNum" "{{ .Values.palworld.game.base_camp_max }}" - set_ini "BaseCampWorkerMaxNum" "{{ .Values.palworld.game.base_camp_worker_max }}" - set_ini "BanListURL" "{{ .Values.palworld.game.ban_list_url }}" -q - set_ini "BuildObjectDamageRate" "{{ .Values.palworld.game.build_object_damage_rate }}" - set_ini "BuildObjectDeteriorationDamageRate" "{{ .Values.palworld.game.build_object_deterioration_damage_rate }}" - - set_ini "bCanPickupOtherGuildDeathPenaltyDrop" "{{ .Values.palworld.game.can_pickup_other_guild_death_penalty_drop }}" -b - set_ini "bUseAuth" "{{ .Values.palworld.game.use_auth }}" -b - set_ini "bEnablePlayerToPlayerDamage" "{{ .Values.palworld.game.enable_pvp_damage }}" -b - set_ini "bEnableFriendlyFire" "{{ .Values.palworld.game.enable_friendly_fire }}" -b - set_ini "bEnableInvaderEnemy" "{{ .Values.palworld.game.enable_invader_enemy }}" -b - set_ini "bEnableAimAssistPad" "{{ .Values.palworld.game.enable_aim_assist_pad }}" -b - set_ini "bEnableAimAssistKeyboard" "{{ .Values.palworld.game.enable_aim_assist_kb }}" -b - set_ini "bEnableNonLoginPenalty" "{{ .Values.palworld.game.enable_non_login_penalty }}" -b - set_ini "bEnableFastTravel" "{{ .Values.palworld.game.enable_fast_travel }}" -b - set_ini "bEnableDefenseOtherGuildPlayer" "{{ .Values.palworld.game.enable_defense_other_guild_player }}" -b - set_ini "bIsMultiplay" "{{ .Values.palworld.game.is_multiplay }}" -b - set_ini "bIsStartLocationSelectByMap" "{{ .Values.palworld.game.is_start_location_select_by_map }}" -b - set_ini "bIsPvP" "{{ .Values.palworld.game.is_pvp }}" -b - set_ini "bExistPlayerAfterLogout" "{{ .Values.palworld.game.exist_players_after_logout }}" -b - set_ini "bActiveUNKO" "{{ .Values.palworld.game.active_unko }}" -b - set_ini "bAutoResetGuildNoOnlinePlayers" "{{ .Values.palworld.game.guild_auto_reset_no_online_players }}" -b - - set_ini "CollectionDropRate" "{{ .Values.palworld.game.collection_drop_rate }}" - set_ini "CollectionObjectHpRate" "{{ .Values.palworld.game.collection_object_hp_rate }}" - set_ini "CollectionObjectRespawnSpeedRate" "{{ .Values.palworld.game.collection_object_respawn_speed_rate }}" - set_ini "CoopPlayerMaxNum" "{{ .Values.palworld.game.max_players_coop }}" - set_ini "DayTimeSpeedRate" "{{ .Values.palworld.game.day_time_speed_rate }}" - set_ini "DropItemMaxNum" "{{ .Values.palworld.game.drop_item_max }}" - set_ini "DropItemMaxNum_UNKO" "{{ .Values.palworld.game.drop_item_max_unko }}" - set_ini "DropItemAliveMaxHours" "{{ .Values.palworld.game.drop_item_alive_max_hours }}" - set_ini "EnemyDropItemRate" "{{ .Values.palworld.game.enemy_drop_item_rate }}" - set_ini "GuildPlayerMaxNum" "{{ .Values.palworld.game.max_players_guild }}" - set_ini "NightTimeSpeedRate" "{{ .Values.palworld.game.night_time_speed_rate }}" - set_ini "PalCaptureRate" "{{ .Values.palworld.game.pal_capture_rate }}" - set_ini "PalEggDefaultHatchingTime" "{{ .Values.palworld.game.pal_egg_default_hatching_time }}" - set_ini "PalSpawnNumRate" "{{ .Values.palworld.game.pal_spawn_num_rate }}" - set_ini "PalDamageRateAttack" "{{ .Values.palworld.game.pal_damage_rate_attack }}" - set_ini "PalDamageRateDefense" "{{ .Values.palworld.game.pal_damage_rate_defense }}" - set_ini "PlayerDamageRateAttack" "{{ .Values.palworld.game.player_damage_rate_attack }}" - set_ini "PlayerDamageRateDefense" "{{ .Values.palworld.game.player_damage_rate_defense }}" - set_ini "PlayerStomachDecreaceRate" "{{ .Values.palworld.game.player_stomach_decreace_rate }}" - set_ini "PlayerStaminaDecreaceRate" "{{ .Values.palworld.game.player_stamina_decreace_rate }}" - set_ini "PlayerAutoHPRegeneRate" "{{ .Values.palworld.game.player_auto_hp_regene_rate }}" - set_ini "PlayerAutoHpRegeneRateInSleep" "{{ .Values.palworld.game.player_auto_hp_regene_rate_in_sleep }}" - set_ini "PalStomachDecreaceRate" "{{ .Values.palworld.game.pal_stomach_decreace_rate }}" - set_ini "PalStaminaDecreaceRate" "{{ .Values.palworld.game.pal_stamina_decreace_rate }}" - set_ini "PalAutoHPRegeneRate" "{{ .Values.palworld.game.pal_auto_hp_regene_rate }}" - set_ini "PalAutoHpRegeneRateInSleep" "{{ .Values.palworld.game.pal_auto_hp_regene_rate_in_sleep }}" - set_ini "ServerPlayerMaxNum" "{{ .Values.palworld.game.max_players }}" - set_ini "WorkSpeedRate" "{{ .Values.palworld.game.work_speed_rate }}" - set_ini "ExpRate" "{{ .Values.palworld.game.exp_rate }}" - - # Check if update_public_ip is not true - if [ "${update_public_ip}" != "true" ]; then - set_ini "PublicIP" "{{ .Values.palworld.game.public_ip }}" -q - fi - - echo "Done!" - - containers: - main: - probes: - liveness: - type: tcp - port: "{{ .Values.service.rcon.ports.rcon.port }}" - readiness: - type: tcp - port: "{{ .Values.service.rcon.ports.rcon.port }}" - startup: - type: tcp - port: "{{ .Values.service.rcon.ports.rcon.port }}" - env: - # paths - STEAMCMD_DIR: "{{ .Values.persistence.steamcmd.mountPath }}" - SERVER_DIR: "{{ .Values.persistence.serverfiles.targetSelector.main.main.mountPath }}" - # steam - GAME_ID: "{{ .Values.palworld.steam.id }}" - USERNAME: "{{ .Values.palworld.steam.username }}" - PASSWRD: "{{ .Values.palworld.steam.password }}" - VALIDATE: "{{ .Values.palworld.steam.validate }}" - # game - SRV_ADMIN_PWD: "{{ .Values.palworld.game.admin_password }}" - UPDATE_PUBLIC_IP: "{{ .Values.palworld.game.update_public_ip }}" - GAME_PARAMS: '{{ join " " .Values.palworld.game.params }}' - GAME_PARAMS_EXTRA: '{{ join " " .Values.palworld.game.params_extra }}' - # backup - BACKUP: "{{ .Values.palworld.backup.enabled }}" - BACKUP_INTERVAL: "{{ .Values.palworld.backup.interval }}" - BACKUP_TO_KEEP: "{{ .Values.palworld.backup.to_keep }}" - rcon: - enabled: true - type: Deployment - strategy: RollingUpdate - replicas: 1 - podSpec: - containers: - rcon: - primary: true - enabled: true - imageSelector: rconImage - tty: true - stdin: true - probes: - liveness: - enabled: false - readiness: - enabled: false - startup: - enabled: false - -persistence: - steamcmd: - enabled: true - mountPath: /serverdata/steamcmd - serverfiles: - enabled: true - targetSelector: - main: - main: - mountPath: /serverdata/serverfiles - update-config-ini: - mountPath: /serverdata/serverfiles - palworld-rcon: - enabled: true - type: configmap - objectName: palworld-rcon - targetSelector: - rcon: - rcon: - mountPath: /rcon.yaml - subPath: rcon.yaml - readOnly: true - -portal: - open: - enabled: false diff --git a/incubator/palworld/0.1.5/questions.yaml b/incubator/palworld/0.1.5/questions.yaml deleted file mode 100644 index a6dd34d77a..0000000000 --- a/incubator/palworld/0.1.5/questions.yaml +++ /dev/null @@ -1,2947 +0,0 @@ -groups: - - name: Container Image - description: Image to be used for container - - name: General Settings - description: General Deployment Settings - - name: Workload Settings - description: Workload Settings - - name: App Configuration - description: App Specific Config Options - - name: Networking and Services - description: Configure Network and Services for Container - - name: Storage and Persistence - description: Persist and Share Data that is Separate from the Container - - name: Ingress - description: Ingress Configuration - - name: Security and Permissions - description: Configure Security Context and Permissions - - name: Resources and Devices - description: "Specify Resources/Devices to be Allocated to Workload" - - name: Middlewares - description: Traefik Middlewares - - name: Metrics - description: Metrics - - name: Addons - description: Addon Configuration - - name: Advanced - description: Advanced Configuration - - name: Postgresql - description: Postgresql - - name: Documentation - description: Documentation -portals: {} -questions: - - variable: global - group: General Settings - label: "Global Settings" - schema: - additional_attrs: true - type: dict - attrs: - - variable: stopAll - label: Stop All - description: "Stops All Running pods and hibernates cnpg" - schema: - type: boolean - default: false - - variable: workload - group: "Workload Settings" - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: main - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: type - label: Type (Advanced) - schema: - type: string - default: Deployment - enum: - - value: Deployment - description: Deployment - - value: DaemonSet - description: DaemonSet - - variable: replicas - label: Replicas (Advanced) - description: Set the number of Replicas - schema: - type: int - show_if: [["type", "!=", "DaemonSet"]] - default: 1 - - variable: podSpec - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: containers - label: Containers - schema: - additional_attrs: true - type: dict - attrs: - - variable: main - label: Main Container - schema: - additional_attrs: true - type: dict - attrs: - - - variable: envList - label: Extra Environment Variables - description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." - schema: - type: list - default: [] - items: - - variable: envItem - label: Environment Variable - schema: - additional_attrs: true - type: dict - attrs: - - variable: name - label: Name - schema: - type: string - - variable: value - label: Value - schema: - type: string - - variable: extraArgs - label: Extra Args - schema: - type: list - default: [] - items: - - variable: arg - label: Arg - schema: - type: string - - variable: advanced - label: Show Advanced Settings - description: Advanced settings are not covered by TrueCharts Support - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: command - label: Command - schema: - type: list - default: [] - items: - - variable: param - label: Param - schema: - type: string - - - variable: palworld - group: App Configuration - label: Palworld Configuration - schema: - additional_attrs: true - type: dict - attrs: - - variable: steam - label: Steam Configuration - schema: - additional_attrs: true - type: dict - attrs: - - variable: id - label: Game Id - description: The ID of the container to download at start up. - schema: - type: string - required: true - default: "2394010" - - variable: username - label: Username - description: Optionally set a steam username otherwise (disable Steam Guard). - schema: - type: string - default: "" - - variable: password - label: Password - description: Optionally set a steam password (disable Steam Guard). - schema: - type: string - private: true - default: "" - - variable: validate - label: Validate - description: Validates the game data. - schema: - type: boolean - default: false - - variable: game - label: Game Configuration - schema: - additional_attrs: true - type: dict - attrs: - - variable: name - label: Server Name - description: The name of your server. - schema: - type: string - default: "TrueCharts Palworld Server" - - variable: description - label: Server Description - description: The description of your server. - schema: - type: string - default: "A Palworld Server running in Kubernetes" - - variable: use_auth - label: Use Auth - schema: - type: boolean - default: true - - variable: admin_password - label: Admin Server Password - description: Optionally set a password for the admin (this field accepts no spaces) - schema: - type: string - private: true - default: "" - - variable: password - label: Server Password - description: Optionally set a password for the server. - schema: - type: string - private: true - default: "" - - variable: auto_reset_guild_time_no_online_players - label: Auto Reset Guid Time No Online Players - schema: - type: string - default: "72.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: ban_list_url - label: Ban List Url - schema: - type: string - default: "https://api.palworldgame.com/api/banlist.txt" - - variable: base_camp_max - label: Base Camp Max - schema: - type: int - default: 128 - min: 1 - - variable: base_camp_worker_max - label: Base Camp Worker Max - schema: - type: int - default: 15 - min: 1 - - variable: build_object_damage_rate - label: Build Object Damage Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: build_object_deterioration_damage_rate - label: Build Object Deterioration Damage Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: can_pickup_other_guild_death_penalty_drop - label: Can Pickup Other Guild Death Penalty Drop - schema: - type: boolean - default: false - - variable: collection_drop_rate - label: Collection Drop Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: collection_object_hp_rate - label: Collection Object HP Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: collection_object_respawn_speed_rate - label: Collection Object Respawn Speed Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: day_time_speed_rate - label: Day Time Speed Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: death_penalty - label: Server Death Penalty - schema: - type: string - default: "ALL" - - variable: difficulty - label: Server Difficulty - schema: - type: string - default: "None" - - variable: drop_item_alive_max_hours - label: Drop Item Alive Max Hours - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: drop_item_max - label: Drop Item Max - schema: - type: int - default: 3000 - min: 1 - - variable: drop_item_max_unko - label: Drop Item Max Unko - schema: - type: int - default: 100 - min: 1 - - variable: enable_aim_assist_kb - label: Enable Aim Assist KeyBoard - schema: - type: boolean - default: false - - variable: enable_aim_assist_pad - label: Enable Aim Assist Pad - schema: - type: boolean - default: false - - variable: enable_defense_other_guild_player - label: Enable Defense Other Guild Player - schema: - type: boolean - default: true - - variable: enable_fast_travel - label: Enable Fast Travel - schema: - type: boolean - default: true - - variable: enable_friendly_fire - label: Enable Friendly Fire - schema: - type: boolean - default: false - - variable: enable_invader_enemy - label: Enable Invader Enemy - schema: - type: boolean - default: true - - variable: active_unko - label: Active Unko - schema: - type: boolean - default: false - - variable: enable_non_login_penalty - label: Enable Non Login Penalty - schema: - type: boolean - default: true - - variable: enable_pvp_damage - label: Enable PVP Damage - schema: - type: boolean - default: false - - variable: exist_players_after_logout - label: Exist Players After LogOut - schema: - type: boolean - default: false - - variable: enemy_drop_item_rate - label: Enemy Drop Item Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: exp_rate - label: Experience Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: guild_auto_reset_no_online_players - label: Guild Auto Reset No Online Players - schema: - type: boolean - default: false - - variable: is_multiplay - label: Is Multiplay - schema: - type: boolean - default: false - - variable: is_pvp - label: Is PVP - schema: - type: boolean - default: false - - variable: is_start_location_select_by_map - label: Is Start Location Select By Map - schema: - type: boolean - default: true - - variable: max_players - label: Max Players - schema: - type: int - default: 32 - - variable: max_players_coop - label: Max Co-Op Players - schema: - type: int - default: 4 - min: 1 - - variable: max_players_guild - label: Max Guild Players - schema: - type: int - default: 20 - min: 1 - - variable: night_time_speed_rate - label: Night Time Speed Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: pal_auto_hp_regene_rate - label: Pal Auto HP Regene Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: pal_auto_hp_regene_rate_in_sleep - label: Pal Auto HP Regene Rate in Sleep - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: pal_capture_rate - label: Pal Capture Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: pal_damage_rate_attack - label: Pal Damage Rate Attack - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: pal_damage_rate_defense - label: Pal Damage Rate Defense - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: pal_egg_default_hatching_time - label: Pal Egg Default Hatching Time - schema: - type: string - default: "72.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: pal_spawn_num_rate - label: Pal Spawn Number Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: pal_stamina_decreace_rate - label: Pal Stamina Decreace Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: pal_stomach_decreace_rate - label: Pal Stomach Decreace Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: player_auto_hp_regene_rate - label: Player Auto HP Regene Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: player_auto_hp_regene_rate_in_sleep - label: Player Auto HP Regene Rate in Sleep - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: player_damage_rate_attack - label: Player Damage Rate Attack - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: player_damage_rate_defense - label: Player Damage Rate Defense - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: player_stamina_decreace_rate - label: Player Stamina Decreace Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: player_stomach_decreace_rate - label: Player Stomach Decreace Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: region - label: Region - schema: - type: string - default: "" - - variable: work_speed_rate - label: Work Speed Rate - schema: - type: string - default: "1.000000" - valid_chars: '^\d{1,}\.[0-9]{6}$' - - variable: update_public_ip - label: Update Public IP - description: Will check if the Public IP is still valid. - schema: - type: boolean - default: false - - variable: public_ip - label: Public IP - schema: - type: string - default: "" - - variable: params - label: Game Params - schema: - type: list - default: - - EpicApp=PalServer - required: true - items: - - variable: param - label: Param - schema: - type: string - required: true - default: "" - - variable: params_extra - label: Game Params Extra - schema: - type: list - default: - - -useperfthreads - - -NoAsyncLoadingThread - - -UseMultithreadForDS - required: true - items: - - variable: extra_param - label: Extra Param - schema: - type: string - required: true - default: "" - - variable: backup - label: Backup Configuration - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enable Backups - description: To enable the automated backup function. - schema: - type: boolean - default: true - - variable: interval - label: Backup Interval - description: The backup interval in minutes. - schema: - type: int - default: 200 - min: 1 - - variable: to_keep - label: Backups To Keep - description: Number of backups to keep. - schema: - type: int - default: 12 - min: 1 - - variable: rcon - label: RCON Sidecar Configuration - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enable the RCON sidecar. - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: timeout - label: Rcon TimeOut - schema: - type: string - required: true - default: 10s - - - variable: TZ - label: Timezone - group: "General Settings" - schema: - type: string - default: "Etc/UTC" - $ref: - - "definitions/timezone" - - variable: service - group: Networking and Services - label: Configure Service(s) - schema: - additional_attrs: true - type: dict - attrs: - - variable: main - label: Main Service - description: The Primary service on which the healthcheck runs, often the webUI - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enable the Service - schema: - type: boolean - default: true - hidden: true - - variable: type - label: Service Type - description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" - schema: - type: string - default: LoadBalancer - enum: - - value: LoadBalancer - description: LoadBalancer (Expose Ports) - - value: ClusterIP - description: ClusterIP (Do Not Expose Ports) - - variable: loadBalancerIP - label: LoadBalancer IP - description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" - schema: - show_if: [["type", "=", "LoadBalancer"]] - type: string - default: "" - - variable: ports - label: "Service's Port(s) Configuration" - schema: - additional_attrs: true - type: dict - attrs: - - variable: main - label: Main Service Port Configuration - schema: - additional_attrs: true - type: dict - attrs: - - variable: port - label: Port - description: This port exposes the container port on the service - schema: - type: int - default: 8211 - required: true - - variable: rcon - label: RCON service - description: RCON Service Port Configuration - 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: serviceexpert - group: Networking and Services - label: Show Expert Config - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: scaleExternalInterface - description: Add External Interfaces - label: Add external Interfaces - group: Networking - schema: - type: list - items: - - variable: interfaceConfiguration - description: Interface Configuration - label: Interface Configuration - schema: - additional_attrs: true - type: dict - $ref: - - "normalize/interfaceConfiguration" - attrs: - - variable: hostInterface - description: Please Specify Host Interface - label: Host Interface - schema: - type: string - required: true - $ref: - - "definitions/interface" - - variable: ipam - description: Define how IP Address will be managed - label: IP Address Management - schema: - additional_attrs: true - type: dict - required: true - attrs: - - variable: type - description: Specify type for IPAM - label: IPAM Type - schema: - type: string - required: true - enum: - - value: dhcp - description: Use DHCP - - value: static - description: Use Static IP - - variable: staticIPConfigurations - label: Static IP Addresses - schema: - type: list - show_if: [["type", "=", "static"]] - items: - - variable: staticIP - label: Static IP - schema: - type: ipaddr - cidr: true - - variable: staticRoutes - label: Static Routes - schema: - type: list - show_if: [["type", "=", "static"]] - items: - - variable: staticRouteConfiguration - label: Static Route Configuration - schema: - additional_attrs: true - type: dict - attrs: - - variable: destination - label: Destination - schema: - type: ipaddr - cidr: true - required: true - - variable: gateway - label: Gateway - schema: - type: ipaddr - cidr: false - required: true - - variable: serviceList - label: Add Manual Custom Services - group: Networking and Services - schema: - type: list - default: [] - items: - - variable: serviceListEntry - label: Custom Service - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enable the service - schema: - type: boolean - default: true - hidden: true - - variable: name - label: Name - schema: - type: string - default: "" - - variable: type - label: Service Type - description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" - schema: - type: string - default: LoadBalancer - enum: - - value: LoadBalancer - description: LoadBalancer (Expose Ports) - - value: ClusterIP - description: ClusterIP (Do Not Expose Ports) - - value: Simple - description: Deprecated CHANGE THIS - - variable: loadBalancerIP - label: LoadBalancer IP - description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" - schema: - show_if: [["type", "=", "LoadBalancer"]] - type: string - default: "" - - variable: advancedsvcset - label: Show Advanced Service Settings - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: externalIPs - label: "External IP's" - description: "External IP's" - schema: - type: list - default: [] - items: - - variable: externalIP - label: External IP - schema: - type: string - - variable: ipFamilyPolicy - label: IP Family Policy - description: Specify the IP Policy - schema: - type: string - default: SingleStack - enum: - - value: SingleStack - description: SingleStack - - value: PreferDualStack - description: PreferDualStack - - value: RequireDualStack - description: RequireDualStack - - variable: ipFamilies - label: IP Families - description: (Advanced) The IP Families that should be used - schema: - type: list - default: [] - items: - - variable: ipFamily - label: IP Family - schema: - type: string - - variable: portsList - label: Additional Service Ports - schema: - type: list - default: [] - items: - - variable: portsListEntry - label: Custom ports - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enable the Port - schema: - type: boolean - default: true - hidden: true - - variable: name - label: Port Name - schema: - type: string - default: "" - - variable: protocol - label: Port Type - schema: - type: string - default: tcp - enum: - - value: http - description: HTTP - - value: https - description: HTTPS - - value: tcp - description: TCP - - value: udp - description: UDP - - variable: targetPort - label: Target Port - description: This port exposes the container port on the service - schema: - type: int - required: true - - variable: port - label: Container Port - schema: - type: int - required: true - - variable: persistence - label: Integrated Persistent Storage - description: Integrated Persistent Storage - group: Storage and Persistence - schema: - additional_attrs: true - type: dict - attrs: - - variable: steamcmd - label: "App SteamCMD Storage" - description: "Stores the Application SteamCMD." - 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: serverfiles - label: "App Server Files Storage" - description: "Stores the Application Server Files." - schema: - additional_attrs: true - type: dict - attrs: - - variable: type - label: Type of Storage - description: Sets the persistence type, Anything other than PVC could break rollback! - schema: - type: string - default: pvc - enum: - - value: pvc - description: PVC - - value: hostPath - description: Host Path - - value: emptyDir - description: emptyDir - - value: nfs - description: NFS Share - - value: iscsi - description: iSCSI Share - - variable: server - label: NFS Server - schema: - show_if: [["type", "=", "nfs"]] - type: string - default: "" - - variable: path - label: Path on NFS Server - schema: - show_if: [["type", "=", "nfs"]] - type: string - default: "" - - variable: iscsi - label: iSCSI Options - schema: - show_if: [["type", "=", "iscsi"]] - type: dict - additional_attrs: true - attrs: - - variable: targetPortal - label: targetPortal - schema: - type: string - required: true - default: "" - - variable: iqn - label: iqn - schema: - type: string - required: true - default: "" - - variable: lun - label: lun - schema: - type: int - default: 0 - - variable: authSession - label: authSession - schema: - type: dict - additional_attrs: true - attrs: - - variable: username - label: username - schema: - type: string - default: "" - - variable: password - label: password - schema: - type: string - default: "" - - variable: usernameInitiator - label: usernameInitiator - schema: - type: string - default: "" - - variable: passwordInitiator - label: passwordInitiator - schema: - type: string - default: "" - - variable: authDiscovery - label: authDiscovery - schema: - type: dict - additional_attrs: true - attrs: - - variable: username - label: username - schema: - type: string - default: "" - - variable: password - label: password - schema: - type: string - default: "" - - variable: usernameInitiator - label: usernameInitiator - schema: - type: string - default: "" - - variable: passwordInitiator - label: passwordInitiator - schema: - type: string - default: "" - - - variable: autoPermissions - label: Automatic Permissions Configuration - description: Automatically set permissions - schema: - show_if: [["type", "!=", "pvc"]] - type: dict - additional_attrs: true - attrs: - - variable: enabled - label: enabled - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: chown - label: Run CHOWN - description: | - It will run CHOWN on the path with the given fsGroup - schema: - type: boolean - default: false - - variable: chmod - label: Run CHMOD - description: | - It will run CHMOD on the path with the given value
- Format should be 3 digits, e.g. 770 - schema: - type: string - valid_chars: '[0-9]{3}' - default: "" - - variable: recursive - label: Recursive - description: | - It will run CHOWN and CHMOD recursively - schema: - type: boolean - default: false - - variable: readOnly - label: Read Only - schema: - type: boolean - default: false - - variable: hostPath - label: Host Path - description: Path inside the container the storage is mounted - schema: - show_if: [["type", "=", "hostPath"]] - type: hostpath - - variable: medium - label: EmptyDir Medium - schema: - show_if: [["type", "=", "emptyDir"]] - type: string - default: "" - enum: - - value: "" - description: Default - - value: Memory - description: Memory - - variable: size - label: Size quotum of Storage (Do NOT REDUCE after installation) - description: This value can ONLY be INCREASED after the installation - schema: - show_if: [["type", "=", "pvc"]] - type: string - default: 256Gi - - variable: storageClass - label: 'storageClass (Advanced)' - description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' - schema: - show_if: [["type", "=", "pvc"]] - type: string - default: "" - - variable: static - label: 'Static Fixed PVC Bindings (Experimental)' - description: Link a PVC to a specific storage location - schema: - show_if: [["type", "=", "pvc"]] - type: dict - additional_attrs: true - attrs: - - variable: mode - label: mode - description: | - disabled: use normal dynamic PVCs - smb: connect to an SMB share - nfs: connect to an NFS share - schema: - type: string - default: "disabled" - enum: - - value: disabled - description: disabled - - value: smb - description: smb - - value: nfs - description: nfs - - variable: server - label: Server - description: server to connect to - schema: - type: string - show_if: [["mode", "!=", "disabled"]] - default: "myserver" - - variable: share - label: Share - description: share to connect to - schema: - type: string - show_if: [["mode", "!=", "disabled"]] - default: "/myshare" - - variable: user - label: User - description: connecting user - schema: - type: string - show_if: [["mode", "=", "smb"]] - default: "myuser" - - variable: domain - label: Domain - description: user domain - schema: - type: string - show_if: [["mode", "=", "smb"]] - default: "" - - variable: password - label: Password - description: connecting password - schema: - type: string - show_if: [["mode", "=", "smb"]] - default: "" - - variable: volumeSnapshots - label: 'Volume Snapshots (Experimental)' - description: Add an entry to the list to force creation of a volumeSnapshot of this PVC - schema: - show_if: [["type", "=", "pvc"]] - type: list - default: [] - items: - - variable: volumeSnapshotEntry - label: Custom volumeSnapshot - schema: - additional_attrs: true - type: dict - attrs: - - variable: name - label: Name - description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' - schema: - type: string - default: "mysnapshot" - required: true - - variable: volumeSnapshotClassName - label: 'volumeSnapshot Class Name (Advanced)' - description: For use with PVCs using a non-default storageClass - schema: - type: string - default: "" - - variable: persistenceList - label: Additional App Storage - group: Storage and Persistence - schema: - type: list - default: [] - items: - - variable: persistenceListEntry - label: Custom Storage - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enable the storage - schema: - type: boolean - default: true - hidden: true - - variable: type - label: Type of Storage - description: Sets the persistence type, Anything other than PVC could break rollback! - schema: - type: string - default: hostPath - enum: - - value: pvc - description: PVC - - value: hostPath - description: Host Path - - value: emptyDir - description: emptyDir - - value: nfs - description: NFS Share - - variable: server - label: NFS Server - schema: - show_if: [["type", "=", "nfs"]] - type: string - default: "" - - variable: path - label: Path on NFS Server - schema: - show_if: [["type", "=", "nfs"]] - type: string - default: "" - - variable: iscsi - label: iSCSI Options - schema: - show_if: [["type", "=", "iscsi"]] - type: dict - additional_attrs: true - attrs: - - variable: targetPortal - label: targetPortal - schema: - type: string - required: true - default: "" - - variable: iqn - label: iqn - schema: - type: string - required: true - default: "" - - variable: lun - label: lun - schema: - type: int - default: 0 - - variable: authSession - label: authSession - schema: - type: dict - additional_attrs: true - attrs: - - variable: username - label: username - schema: - type: string - default: "" - - variable: password - label: password - schema: - type: string - default: "" - - variable: usernameInitiator - label: usernameInitiator - schema: - type: string - default: "" - - variable: passwordInitiator - label: passwordInitiator - schema: - type: string - default: "" - - variable: authDiscovery - label: authDiscovery - schema: - type: dict - additional_attrs: true - attrs: - - variable: username - label: username - schema: - type: string - default: "" - - variable: password - label: password - schema: - type: string - default: "" - - variable: usernameInitiator - label: usernameInitiator - schema: - type: string - default: "" - - variable: passwordInitiator - label: passwordInitiator - schema: - type: string - default: "" - - variable: autoPermissions - label: Automatic Permissions Configuration - description: Automatically set permissions - schema: - show_if: [["type", "!=", "pvc"]] - type: dict - additional_attrs: true - attrs: - - variable: enabled - label: enabled - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: chown - label: Run CHOWN - description: | - It will run CHOWN on the path with the given fsGroup - schema: - type: boolean - default: false - - variable: chmod - label: Run CHMOD - description: | - It will run CHMOD on the path with the given value
- Format should be 3 digits, e.g. 770 - schema: - type: string - valid_chars: '[0-9]{3}' - default: "" - - variable: recursive - label: Recursive - description: | - It will run CHOWN and CHMOD recursively - schema: - type: boolean - default: false - - variable: readOnly - label: Read Only - schema: - type: boolean - default: false - - variable: hostPath - label: Host Path - description: Path inside the container the storage is mounted - schema: - show_if: [["type", "=", "hostPath"]] - type: hostpath - - variable: mountPath - label: Mount Path - description: Path inside the container the storage is mounted - schema: - type: string - default: "" - required: true - valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$' - - variable: medium - label: EmptyDir Medium - schema: - show_if: [["type", "=", "emptyDir"]] - type: string - default: "" - enum: - - value: "" - description: Default - - value: Memory - description: Memory - - variable: size - label: Size Quotum of Storage - schema: - show_if: [["type", "=", "pvc"]] - type: string - default: 256Gi - - variable: storageClass - label: 'storageClass (Advanced)' - description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' - schema: - show_if: [["type", "=", "pvc"]] - type: string - default: "" - - variable: static - label: 'Static Fixed PVC Bindings (Experimental)' - description: Link a PVC to a specific storage location - schema: - show_if: [["type", "=", "pvc"]] - type: dict - additional_attrs: true - attrs: - - variable: mode - label: mode - description: | - disabled: use normal dynamic PVCs - smb: connect to an SMB share - nfs: connect to an NFS share - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: disabled - - value: smb - description: smb - - value: nfs - description: nfs - - variable: server - label: Server - description: server to connect to - schema: - type: string - show_if: [["mode", "!=", "disabled"]] - default: "myserver" - - variable: share - label: Share - description: share to connect to - schema: - type: string - show_if: [["mode", "!=", "disabled"]] - default: "/myshare" - - variable: user - label: User - description: connecting user - schema: - type: string - show_if: [["mode", "=", "smb"]] - default: "myuser" - - variable: domain - label: Domain - description: user domain - schema: - type: string - show_if: [["mode", "=", "smb"]] - default: "" - - variable: password - label: Password - description: connecting password - schema: - type: string - show_if: [["mode", "=", "smb"]] - default: "" - - variable: volumeSnapshots - label: 'Volume Snapshots (Experimental)' - description: Add an entry to the list to force creation of a volumeSnapshot of this PVC - schema: - show_if: [["type", "=", "pvc"]] - type: list - default: [] - items: - - variable: volumeSnapshotEntry - label: Custom volumeSnapshot - schema: - additional_attrs: true - type: dict - attrs: - - variable: name - label: Name - description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' - schema: - type: string - default: "mysnapshot" - required: true - - variable: volumeSnapshotClassName - label: 'volumeSnapshot Class Name (Advanced)' - description: For use with PVCs using a non-default storageClass - schema: - type: string - default: "" - - variable: securityContext - group: Security and Permissions - label: Security Context - schema: - additional_attrs: true - type: dict - attrs: - - variable: container - label: Container - schema: - additional_attrs: true - type: dict - attrs: - # Settings from questions.yaml get appended here on a per-app basis - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: "The groupID of the user running the application" - schema: - type: int - default: 0 - # Settings from questions.yaml get appended here on a per-app basis - - variable: PUID - label: Process User ID - PUID - description: When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps - schema: - type: int - show_if: [["runAsUser", "=", 0]] - default: 568 - - variable: UMASK - label: UMASK - description: When supported by the container, this sets the UMASK for the App. Not supported by all Apps - schema: - type: string - default: "0022" - - variable: advanced - label: Show Advanced Settings - description: Advanced settings are not covered by TrueCharts Support - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: privileged - label: "Privileged mode" - schema: - type: boolean - default: false - - variable: readOnlyRootFilesystem - label: "ReadOnly Root Filesystem" - schema: - type: boolean - default: true - - variable: pod - label: Pod - schema: - additional_attrs: true - type: dict - attrs: - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: OnRootMismatch - enum: - - value: OnRootMismatch - description: OnRootMismatch - - value: Always - description: Always - - variable: supplementalGroups - label: Supplemental Groups - schema: - type: list - default: [] - items: - - variable: supplementalGroupsEntry - label: Supplemental Group - schema: - type: int - # Settings from questions.yaml get appended here on a per-app basis - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: resources - group: Resources and Devices - label: "Resource Limits" - schema: - additional_attrs: true - type: dict - attrs: - - variable: limits - label: Advanced Limit Resource Consumption - schema: - additional_attrs: true - type: dict - attrs: - - variable: cpu - label: CPU - description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" - schema: - type: string - default: 4000m - valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' - - variable: memory - label: RAM - description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" - schema: - type: string - default: 8Gi - valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' - - variable: requests - label: "Minimum Resources Required (request)" - schema: - additional_attrs: true - type: dict - hidden: true - attrs: - - variable: cpu - label: CPU - description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" - schema: - type: string - default: 10m - hidden: true - valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' - - variable: memory - label: "RAM" - description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation" - schema: - type: string - default: 50Mi - hidden: true - valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' - - variable: deviceList - label: Mount USB Devices - group: Resources and Devices - schema: - type: list - default: [] - items: - - variable: deviceListEntry - label: Device - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enable the Storage - schema: - type: boolean - default: true - - variable: type - label: (Advanced) Type of Storage - description: Sets the persistence type - schema: - type: string - default: device - hidden: true - - variable: readOnly - label: readOnly - schema: - type: boolean - default: false - - variable: hostPath - label: Host Device Path - description: Path to the device on the host system - schema: - type: path - - variable: mountPath - label: Container Device Path - description: Path inside the container the device is mounted - schema: - type: string - default: "/dev/ttyACM0" - - variable: scaleGPU - label: GPU Configuration - group: Resources and Devices - schema: - type: list - default: [] - items: - - variable: scaleGPUEntry - label: GPU - schema: - additional_attrs: true - type: dict - attrs: - # Specify GPU configuration - - variable: gpu - label: Select GPU - schema: - additional_attrs: true - type: dict - $ref: - - "definitions/gpuConfiguration" - attrs: [] - - variable: workaround - label: "Workaround" - schema: - type: string - default: workaround - hidden: true -# - variable: horizontalPodAutoscaler -# group: Advanced -# label: (Advanced) Horizontal Pod Autoscaler -# schema: -# type: list -# default: [] -# items: -# - variable: hpaEntry -# label: HPA Entry -# schema: -# additional_attrs: true -# type: dict -# attrs: -# - variable: name -# label: Name -# schema: -# type: string -# required: true -# default: "" -# - variable: enabled -# label: Enabled -# schema: -# type: boolean -# default: false -# show_subquestions_if: true -# subquestions: -# - variable: target -# label: Target -# description: Deployment name, Defaults to Main Deployment -# schema: -# type: string -# default: "" -# - variable: minReplicas -# label: Minimum Replicas -# schema: -# type: int -# default: 1 -# - variable: maxReplicas -# label: Maximum Replicas -# schema: -# type: int -# default: 5 -# - variable: targetCPUUtilizationPercentage -# label: Target CPU Utilization Percentage -# schema: -# type: int -# default: 80 -# - variable: targetMemoryUtilizationPercentage -# label: Target Memory Utilization Percentage -# schema: -# type: int -# default: 80 - - variable: networkPolicy - group: Advanced - label: (Advanced) Network Policy - schema: - type: list - default: [] - items: - - variable: netPolicyEntry - label: Network Policy Entry - schema: - additional_attrs: true - type: dict - attrs: - - variable: name - label: Name - schema: - type: string - required: true - default: "" - - variable: enabled - label: Enabled - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: policyType - label: Policy Type - schema: - type: string - default: "" - enum: - - value: "" - description: Default - - value: ingress - description: Ingress - - value: egress - description: Egress - - value: ingress-egress - description: Ingress and Egress - - variable: egress - label: Egress - schema: - type: list - default: [] - items: - - variable: egressEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: to - label: To - schema: - type: list - default: [] - items: - - variable: toEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: ipBlock - label: IP Block - schema: - additional_attrs: true - type: dict - attrs: - - variable: cidr - label: CIDR - schema: - type: string - default: "" - - variable: except - label: Except - schema: - type: list - default: [] - items: - - variable: exceptint - label: "" - schema: - type: string - - variable: namespaceSelector - label: Namespace Selector - schema: - additional_attrs: true - type: dict - attrs: - - variable: matchExpressions - label: Match Expressions - schema: - type: list - default: [] - items: - - variable: expressionEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: key - label: Key - schema: - type: string - - variable: operator - label: Operator - schema: - type: string - default: TCP - enum: - - value: In - description: In - - value: NotIn - description: NotIn - - value: Exists - description: Exists - - value: DoesNotExist - description: DoesNotExist - - variable: values - label: Values - schema: - type: list - default: [] - items: - - variable: value - label: "" - schema: - type: string - - variable: podSelector - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: matchExpressions - label: Match Expressions - schema: - type: list - default: [] - items: - - variable: expressionEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: key - label: Key - schema: - type: string - - variable: operator - label: Operator - schema: - type: string - default: TCP - enum: - - value: In - description: In - - value: NotIn - description: NotIn - - value: Exists - description: Exists - - value: DoesNotExist - description: DoesNotExist - - variable: values - label: Values - schema: - type: list - default: [] - items: - - variable: value - label: "" - schema: - type: string - - variable: ports - label: Ports - schema: - type: list - default: [] - items: - - variable: portsEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: port - label: Port - schema: - type: int - - variable: endPort - label: End Port - schema: - type: int - - variable: protocol - label: Protocol - schema: - type: string - default: TCP - enum: - - value: TCP - description: TCP - - value: UDP - description: UDP - - value: SCTP - description: SCTP - - variable: ingress - label: Ingress - schema: - type: list - default: [] - items: - - variable: ingressEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: from - label: From - schema: - type: list - default: [] - items: - - variable: fromEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: ipBlock - label: IP Block - schema: - additional_attrs: true - type: dict - attrs: - - variable: cidr - label: CIDR - schema: - type: string - default: "" - - variable: except - label: Except - schema: - type: list - default: [] - items: - - variable: exceptint - label: "" - schema: - type: string - - variable: namespaceSelector - label: Namespace Selector - schema: - additional_attrs: true - type: dict - attrs: - - variable: matchExpressions - label: Match Expressions - schema: - type: list - default: [] - items: - - variable: expressionEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: key - label: Key - schema: - type: string - - variable: operator - label: Operator - schema: - type: string - default: TCP - enum: - - value: In - description: In - - value: NotIn - description: NotIn - - value: Exists - description: Exists - - value: DoesNotExist - description: DoesNotExist - - variable: values - label: Values - schema: - type: list - default: [] - items: - - variable: value - label: "" - schema: - type: string - - variable: podSelector - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: matchExpressions - label: Match Expressions - schema: - type: list - default: [] - items: - - variable: expressionEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: key - label: Key - schema: - type: string - - variable: operator - label: Operator - schema: - type: string - default: TCP - enum: - - value: In - description: In - - value: NotIn - description: NotIn - - value: Exists - description: Exists - - value: DoesNotExist - description: DoesNotExist - - variable: values - label: Values - schema: - type: list - default: [] - items: - - variable: value - label: "" - schema: - type: string - - variable: ports - label: Ports - schema: - type: list - default: [] - items: - - variable: portsEntry - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: port - label: Port - schema: - type: int - - variable: endPort - label: End Port - schema: - type: int - - variable: protocol - label: Protocol - schema: - type: string - default: TCP - enum: - - value: TCP - description: TCP - - value: UDP - description: UDP - - value: SCTP - description: SCTP - - variable: addons - group: Addons - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: codeserver - label: Codeserver - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enabled - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: service - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: type - label: Service Type - description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" - schema: - type: string - default: LoadBalancer - enum: - - value: NodePort - description: Deprecated CHANGE THIS - - value: ClusterIP - description: ClusterIP - - value: LoadBalancer - description: LoadBalancer - - variable: loadBalancerIP - label: LoadBalancer IP - description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" - schema: - show_if: [["type", "=", "LoadBalancer"]] - type: string - default: "" - - variable: ports - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: codeserver - label: "" - schema: - additional_attrs: true - type: dict - attrs: - - variable: port - label: Port - schema: - type: int - default: 36107 - - variable: ingress - label: "Ingress" - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enable Ingress - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hosts - label: Hosts - schema: - type: list - default: [] - items: - - variable: hostEntry - label: Host - schema: - additional_attrs: true - type: dict - attrs: - - variable: host - label: HostName - schema: - type: string - default: "" - required: true - - variable: paths - label: Paths - schema: - type: list - default: [{path: "/", pathType: "Prefix"}] - items: - - variable: pathEntry - label: Host - schema: - additional_attrs: true - type: dict - attrs: - - variable: path - label: Path - schema: - type: string - required: true - default: "/" - - variable: pathType - label: Path Type - schema: - type: string - required: true - default: Prefix - - variable: integrations - label: Integrations - description: Connect ingress with other charts - schema: - additional_attrs: true - type: dict - attrs: - - variable: traefik - label: Traefik - description: Connect ingress with Traefik - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: enabled - schema: - type: boolean - default: true - - variable: allowCors - label: 'Allow Cross Origin Requests (advanced)' - schema: - type: boolean - default: false - show_if: [["enabled", "=", true]] - - variable: entrypoints - label: Entrypoints - schema: - type: list - default: ["websecure"] - show_if: [["enabled", "=", true]] - items: - - variable: entrypoint - label: Entrypoint - schema: - type: string - - variable: middlewares - label: Middlewares - schema: - type: list - default: [] - show_if: [["enabled", "=", true]] - items: - - variable: middleware - label: Middleware - schema: - additional_attrs: true - type: dict - attrs: - - variable: name - label: name - schema: - type: string - default: "" - required: true - - variable: namespace - label: 'namespace (optional)' - schema: - type: string - default: "" - - variable: certManager - label: certManager - description: Connect ingress with certManager - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: enabled - schema: - type: boolean - default: false - - variable: certificateIssuer - label: certificateIssuer - description: defaults to chartname - schema: - type: string - default: "" - show_if: [["enabled", "=", true]] - - variable: advanced - label: Show Advanced Settings - description: Advanced settings are not covered by TrueCharts Support - schema: - type: boolean - default: false - - variable: ingressClassName - label: (Advanced/Optional) IngressClass Name - schema: - type: string - show_if: [["advanced", "=", true]] - default: "" - - variable: tls - label: TLS-Settings - schema: - type: list - show_if: [["advanced", "=", true]] - default: [] - items: - - variable: tlsEntry - label: Host - schema: - additional_attrs: true - type: dict - attrs: - - variable: hosts - label: Certificate Hosts - schema: - type: list - default: [] - items: - - variable: host - label: Host - schema: - type: string - default: "" - required: true - - - variable: certificateIssuer - label: Use Cert-Manager clusterIssuer - description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' - schema: - type: string - default: "" - - variable: clusterCertificate - label: 'Cluster Certificate (Advanced)' - description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' - schema: - type: string - show_if: [["certificateIssuer", "=", ""]] - default: "" - - variable: secretName - label: 'Use Custom Certificate Secret (Advanced)' - schema: - show_if: [["certificateIssuer", "=", ""]] - type: string - default: "" - - variable: scaleCert - label: 'Use TrueNAS SCALE Certificate (Deprecated)' - schema: - show_if: [["certificateIssuer", "=", ""]] - type: int - $ref: - - "definitions/certificate" - - variable: envList - label: Codeserver Environment Variables - schema: - type: list - show_if: [["type", "!=", "disabled"]] - default: [] - items: - - variable: envItem - label: Environment Variable - schema: - additional_attrs: true - type: dict - attrs: - - variable: name - label: Name - schema: - type: string - required: true - - variable: value - label: Value - schema: - type: string - required: true - - variable: netshoot - label: Netshoot - schema: - additional_attrs: true - type: dict - attrs: - - variable: enabled - label: Enabled - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: envList - label: Netshoot Environment Variables - schema: - type: list - show_if: [["type", "!=", "disabled"]] - default: [] - items: - - variable: envItem - label: Environment Variable - schema: - additional_attrs: true - type: dict - attrs: - - variable: name - label: Name - schema: - type: string - required: true - - variable: value - label: Value - schema: - type: string - required: true - - variable: vpn - label: VPN - schema: - additional_attrs: true - type: dict - attrs: - - variable: type - label: Type - schema: - type: string - default: disabled - enum: - - value: disabled - description: disabled - - value: gluetun - description: Gluetun - - value: tailscale - description: Tailscale - - value: openvpn - description: OpenVPN (Deprecated) - - value: wireguard - description: Wireguard (Deprecated) - - variable: openvpn - label: OpenVPN Settings - schema: - additional_attrs: true - type: dict - show_if: [["type", "=", "openvpn"]] - attrs: - - variable: username - label: Authentication Username (Optional) - description: Authentication Username, Optional - schema: - type: string - default: "" - - variable: password - label: Authentication Password - description: Authentication Credentials - schema: - type: string - show_if: [["username", "!=", ""]] - default: "" - required: true - - variable: tailscale - label: Tailscale Settings - schema: - additional_attrs: true - type: dict - show_if: [["type", "=", "tailscale"]] - attrs: - - variable: authkey - label: Authentication Key - description: Provide an auth key to automatically authenticate the node as your user account. - schema: - type: string - private: true - default: "" - - variable: auth_once - label: Auth Once - description: Only attempt to log in if not already logged in. - schema: - type: boolean - default: true - - variable: accept_dns - label: Accept DNS - description: Accept DNS configuration from the admin console. - schema: - type: boolean - default: false - - variable: userspace - label: Userspace - description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. - schema: - type: boolean - default: false - - variable: routes - label: Routes - description: Expose physical subnet routes to your entire Tailscale network. - schema: - type: string - default: "" - - variable: dest_ip - label: Destination IP - description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. - schema: - type: string - default: "" - - variable: sock5_server - label: Sock5 Server - description: The address on which to listen for SOCKS5 proxying into the tailscale net. - schema: - type: string - default: "" - - variable: outbound_http_proxy_listen - label: Outbound HTTP Proxy Listen - description: The address on which to listen for HTTP proxying into the tailscale net. - schema: - type: string - default: "" - - variable: extra_args - label: Extra Args - description: Extra Args - schema: - type: string - default: "" - - variable: daemon_extra_args - label: Tailscale Daemon Extra Args - description: Tailscale Daemon Extra Args - schema: - type: string - default: "" - - variable: killSwitch - label: Enable Killswitch - schema: - type: boolean - show_if: [["type", "!=", "disabled"]] - default: true - - variable: excludedNetworks_IPv4 - label: Killswitch Excluded IPv4 networks - description: List of Killswitch Excluded IPv4 Addresses - schema: - type: list - show_if: [["type", "!=", "disabled"]] - default: [] - items: - - variable: networkv4 - label: IPv4 Network - schema: - type: string - required: true - - variable: excludedNetworks_IPv6 - label: Killswitch Excluded IPv6 networks - description: "List of Killswitch Excluded IPv6 Addresses" - schema: - type: list - show_if: [["type", "!=", "disabled"]] - default: [] - items: - - variable: networkv6 - label: IPv6 Network - schema: - type: string - required: true - - variable: configFile - label: VPN Config File Location - schema: - type: string - show_if: [["type", "!=", "disabled"]] - default: "" - - - variable: envList - label: VPN Environment Variables - schema: - type: list - show_if: [["type", "!=", "disabled"]] - default: [] - items: - - variable: envItem - label: Environment Variable - schema: - additional_attrs: true - type: dict - attrs: - - variable: name - label: Name - schema: - type: string - required: true - - variable: value - label: Value - schema: - type: string - required: true - max_length: 10240 - - variable: docs - group: Documentation - label: Please read the documentation at https://truecharts.org - description: Please read the documentation at -
https://truecharts.org - schema: - additional_attrs: true - type: dict - attrs: - - variable: confirmDocs - label: I have checked the documentation - schema: - type: boolean - default: true - - variable: donateNag - group: Documentation - label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor - description: Please consider supporting TrueCharts, see -
https://truecharts.org/sponsor - schema: - additional_attrs: true - type: dict - attrs: - - variable: confirmDonate - label: I have considered donating - schema: - type: boolean - default: true - hidden: true diff --git a/incubator/palworld/0.1.5/templates/NOTES.txt b/incubator/palworld/0.1.5/templates/NOTES.txt deleted file mode 100644 index efcb74cb77..0000000000 --- a/incubator/palworld/0.1.5/templates/NOTES.txt +++ /dev/null @@ -1 +0,0 @@ -{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/incubator/palworld/0.1.5/templates/_configmap.tpl b/incubator/palworld/0.1.5/templates/_configmap.tpl deleted file mode 100644 index 9427e37405..0000000000 --- a/incubator/palworld/0.1.5/templates/_configmap.tpl +++ /dev/null @@ -1,18 +0,0 @@ -{{/* Define the configmap */}} -{{- define "palworld.configmaps" -}} -{{- $fullname := (include "tc.v1.common.lib.chart.names.fullname" $) -}} - -{{- $adminPassword := .Values.palworld.game.admin_password -}} -{{- $rconPort := .Values.service.rcon.ports.rcon.port }} -{{- $rcon := .Values.palworld.rcon }} - -palworld-rcon: - enabled: true - data: - rcon.yaml: | - default: - address: "{{ printf "%v-rcon:%v" $fullname $rconPort }}" - password: {{ $adminPassword }} - log: "rcon-palworld.log" - timeout: "{{ $rcon.timeout }}" -{{- end -}} diff --git a/incubator/palworld/0.1.5/templates/common.yaml b/incubator/palworld/0.1.5/templates/common.yaml deleted file mode 100644 index 56249f9017..0000000000 --- a/incubator/palworld/0.1.5/templates/common.yaml +++ /dev/null @@ -1,17 +0,0 @@ -{{/* Make sure all variables are set properly */}} -{{- include "tc.v1.common.loader.init" . -}} - -{{/* Render configmaps for all pods */}} -{{- $configmaps := include "palworld.configmaps" . | fromYaml -}} -{{- if $configmaps -}} - {{- $_ := mustMergeOverwrite .Values.configmap $configmaps -}} -{{- end -}} - -{{/* Disable [rcon] if requested */}} -{{- if not .Values.palworld.rcon.enabled -}} - {{- $_ := set .Values.workload.rcon "enabled" false -}} -{{- end -}} - - -{{/* Render the templates */}} -{{- include "tc.v1.common.loader.apply" . -}} diff --git a/incubator/palworld/0.1.5/values.yaml b/incubator/palworld/0.1.5/values.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/incubator/palworld/item.yaml b/incubator/palworld/item.yaml deleted file mode 100644 index 5cee3a2dae..0000000000 --- a/incubator/palworld/item.yaml +++ /dev/null @@ -1,4 +0,0 @@ -icon_url: https://truecharts.org/img/hotlink-ok/chart-icons/palworld.png -categories: -- GameServers -screenshots: []