Commit new Chart releases for TrueCharts

Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
This commit is contained in:
TrueCharts-Bot
2024-02-04 06:46:20 +00:00
parent 3d56ef9670
commit 3ef318345c
14 changed files with 133 additions and 156 deletions

View File

@@ -1,3 +0,0 @@
## [palworld-0.1.3](https://github.com/truecharts/charts/compare/palworld-0.1.2...palworld-0.1.3) (2024-02-01)

View File

@@ -1 +0,0 @@
{{ include "tc.v1.common.loader.all" . }}

View File

@@ -7,6 +7,9 @@ title: Changelog
## [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)

View File

@@ -33,5 +33,6 @@ 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.3
version: 0.1.4

View File

@@ -0,0 +1,3 @@
## [palworld-0.1.4](https://github.com/truecharts/charts/compare/palworld-0.1.3...palworld-0.1.4) (2024-02-04)

View File

@@ -93,6 +93,7 @@ palworld:
region: ""
work_speed_rate: "1.000000"
update_public_ip: false
public_ip: ""
params:
- EpicApp=PalServer
params_extra:
@@ -120,6 +121,7 @@ workload:
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
@@ -134,24 +136,43 @@ workload:
fi
set_ini_value() {
local key="${1}"
local value="${2}"
local quote_flag="${3:-}"
local key="${1}"
local value="${2}"
local quote_flag="${3:-}"
# Check if the key exists
if ! grep -q "${key}=" "${cfgFile}"; then
echo "Key '${key}' does not exist in '${cfgFile}'. Skipping..."
return
fi
# 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
if [ "$quote_flag" = "-q" ]; then
# Add quotes around the value
value="\"$value\""
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
echo "Setting ${key}..."
sed -i "s|\(${key}=\)[^,]*|\1${value}|g" "${cfgFile}"
echo "Set to $(grep -Po "(?<=${key}=)[^,]*" "${cfgFile}")"
# Add quotes around the value if quote_flag is set
if [ "$quote_flag" = "-q" ]; then
value="\"$value\""
fi
# 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...."
@@ -160,11 +181,11 @@ workload:
set_ini_value "RCONPort" "{{ .Values.service.rcon.ports.rcon.port }}" -q
set_ini_value "PublicPort" "{{ .Values.service.main.ports.main.port }}" -q
set_ini_value "ServerPassword" "{{ .Values.palworld.game.password }}" -q
set_ini_value "AdminPassword" "{{ .Values.palworld.game.admin_password }}" -q
set_ini_value "ServerPassword" '{{ .Values.palworld.game.password }}' -q
set_ini_value "AdminPassword" '{{ .Values.palworld.game.admin_password }}' -q
set_ini_value "ServerName" "{{ .Values.palworld.game.name }}" -q
set_ini_value "ServerDescription" "{{ .Values.palworld.game.description }}" -q
set_ini_value "ServerName" '{{ .Values.palworld.game.name }}' -q
set_ini_value "ServerDescription" '{{ .Values.palworld.game.description }}' -q
set_ini_value "Difficulty" "{{ .Values.palworld.game.difficulty }}" -q
set_ini_value "DeathPenalty" "{{ .Values.palworld.game.death_penalty }}" -q
set_ini_value "Region" "{{ .Values.palworld.game.region }}" -q
@@ -221,6 +242,10 @@ workload:
set_ini_value "WorkSpeedRate" "{{ .Values.palworld.game.work_speed_rate }}"
set_ini_value "ExpRate" "{{ .Values.palworld.game.exp_rate }}"
# Check if update_public_ip is not true
if [ "${update_public_ip}" != "true" ]; then
set_ini_value "PublicIP" "{{ .Values.palworld.game.public_ip }}" -q
fi
echo "Done!"
containers:
main:
@@ -272,12 +297,6 @@ workload:
enabled: false
startup:
enabled: false
args:
- ./rcon
- -a
- '{{ printf "%v-rcon:%v" (include "tc.v1.common.lib.chart.names.fullname" $) .Values.service.rcon.ports.rcon.port }}'
- -p
- "{{ .Values.palworld.game.admin_password }}"
persistence:
steamcmd:
@@ -291,7 +310,16 @@ persistence:
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

View File

@@ -523,6 +523,42 @@ questions:
schema:
type: boolean
default: false
- variable: public_ip
label: Public IP
schema:
type: string
default: ""
show_if: [[update_public_ip, "!=", "true"]]
- 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:
@@ -558,124 +594,6 @@ questions:
default: "Etc/UTC"
$ref:
- "definitions/timezone"
- variable: podOptions
group: "General Settings"
label: "Global Pod Options (Advanced)"
schema:
additional_attrs: true
type: dict
attrs:
- variable: expertPodOpts
label: "Expert - Pod Options"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: hostNetwork
label: "Host Networking"
schema:
type: boolean
default: false
- variable: dnsConfig
label: "DNS Configuration"
schema:
type: dict
additional_attrs: true
attrs:
- variable: options
label: "Options"
schema:
type: list
default: [{"name": "ndots", "value": "1"}]
items:
- variable: optionsEntry
label: "Option Entry"
schema:
type: dict
additional_attrs: true
attrs:
- variable: name
label: "Name"
schema:
type: string
required: true
- variable: value
label: "Value"
schema:
type: string
- variable: nameservers
label: "Nameservers"
schema:
type: list
default: []
items:
- variable: nsEntry
label: "Nameserver Entry"
schema:
type: string
required: true
- variable: searches
label: "Searches"
schema:
type: list
default: []
items:
- variable: searchEntry
label: "Search Entry"
schema:
type: string
required: true
- variable: imagePullSecretList
group: "General Settings"
label: "Image Pull Secrets"
schema:
type: list
default: []
items:
- variable: pullsecretentry
label: "Pull Secret"
schema:
type: dict
additional_attrs: true
attrs:
- variable: enabled
label: Enabled
schema:
type: boolean
default: true
- variable: data
label: Data
schema:
type: dict
additional_attrs: true
attrs:
- variable: registry
label: "Registry"
schema:
type: string
required: true
default: "https://index.docker.io/v1/"
- variable: username
label: "Username"
schema:
type: string
required: true
default: ""
- variable: password
label: "Password"
schema:
type: string
required: true
private: true
default: ""
- variable: email
label: "Email"
schema:
type: string
required: true
default: ""
- variable: service
group: Networking and Services
label: Configure Service(s)
@@ -684,8 +602,8 @@ questions:
type: dict
attrs:
- variable: main
label: "Main Service"
description: "The Primary service on which the healthcheck runs, often the webUI"
label: Main Service
description: The Primary service on which the healthcheck runs, often the webUI
schema:
additional_attrs: true
type: dict
@@ -721,21 +639,21 @@ questions:
type: dict
attrs:
- variable: main
label: "Main Service Port Configuration"
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"
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: The RCON service.
label: RCON service
description: RCON Service Port Configuration
schema:
additional_attrs: true
type: dict

View File

@@ -0,0 +1,17 @@
{{/* 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 }}
palworld-rcon:
enabled: true
data:
rcon.yaml: |
default:
address: "{{ printf "%v-rcon:%v" $fullname $rconPort }}"
password: {{ $adminPassword }}
log: "rcon-palworld.log"
timeout: "10s"
{{- end -}}

View File

@@ -0,0 +1,11 @@
{{/* 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 -}}
{{/* Render the templates */}}
{{- include "tc.v1.common.loader.apply" . -}}