Closed Illydth closed 9 months ago
@Illydth You're right, this needs to be changed.
I wasn't sure but u confirmed my thoughts thx
I haven't delved into advanced configurations yet, but I currently utilize the ../Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
for settings while keeping the YAML file simple, this works for now...
@Illydth Thanks for the report, updated the .env.example
with working variables. Closing the issue
Describe the bug
Specifically when using the environment options file with "env-file" option, most of the "" are incorrect. Specifically using "true" for "UPDATE_ON_BOOT" causes the IF check in the start.sh script to check ""true"" vs. "true" and fails, thus nothing downloads to your data directory. You can see the same behavior with the UID/GID 1000 which is "1000" in the env file by default. When you start the server you'll immediately see it complain about "1000" being a bad value.
To Reproduce
Steps to reproduce the behavior:
PalWorld_palworld.1.i2rm7a8eotn3@docker03 | /home/steam/server/init.sh: line 3: [[: "1000": syntax error: operand expected (error token is ""1000"") PalWorld_palworld.1.i2rm7a8eotn3@docker03 | /home/steam/server/init.sh: line 3: [[: "1000": syntax error: operand expected (error token is ""1000"") PalWorld_palworld.1.i2rm7a8eotn3@docker03 | EXECUTING USERMOD PalWorld_palworld.1.i2rm7a8eotn3@docker03 | usermod: invalid user ID '"1000"' PalWorld_palworld.1.i2rm7a8eotn3@docker03 | groupmod: invalid group ID '"1000"' PalWorld_palworld.1.i2rm7a8eotn3@docker03 | CHECKING FOR EXISTING CONFIG PalWorld_palworld.1.i2rm7a8eotn3@docker03 | GENERATING CONFIG PalWorld_palworld.1.i2rm7a8eotn3@docker03 | timeout: failed to run command './PalServer.sh': No such file or directory PalWorld_palworld.1.i2rm7a8eotn3@docker03 | cp: cannot stat '/palworld/DefaultPalWorldSettings.ini': No such file or directory
The initial error shows that the "" around the 1000 is being passed into the container directly so the PUID value isn't [1000] it's ["1000"] and an invalid value. If you extrapolate this to the first check of start.sh which is "${UPDATE_ON_BOOT}" = "true" it becomes obvious why PalServer.sh doesn't exist...it's never downloaded because the steamcmd command is never executed.
Expected behavior
Example ENV file is written in such a way that it is accepted (with modifications) out of the box. In other words, the default ENV file should not have "" around items that shouldn't have "" around them.
Desktop (please complete the following information)
Note, I'm running this as a docker stack service not as a container but that amounts to no real difference.
docker-compose.yml contents
Container/Host Logs
Server Log Cut:
PalWorld_palworld.1.i2rm7a8eotn3@docker03 | /home/steam/server/init.sh: line 3: [[: "1000": syntax error: operand expected (error token is ""1000"") PalWorld_palworld.1.i2rm7a8eotn3@docker03 | /home/steam/server/init.sh: line 3: [[: "1000": syntax error: operand expected (error token is ""1000"") PalWorld_palworld.1.i2rm7a8eotn3@docker03 | EXECUTING USERMOD PalWorld_palworld.1.i2rm7a8eotn3@docker03 | usermod: invalid user ID '"1000"' PalWorld_palworld.1.i2rm7a8eotn3@docker03 | groupmod: invalid group ID '"1000"' PalWorld_palworld.1.i2rm7a8eotn3@docker03 | CHECKING FOR EXISTING CONFIG PalWorld_palworld.1.i2rm7a8eotn3@docker03 | GENERATING CONFIG PalWorld_palworld.1.i2rm7a8eotn3@docker03 | timeout: failed to run command './PalServer.sh': No such file or directory PalWorld_palworld.1.i2rm7a8eotn3@docker03 | cp: cannot stat '/palworld/DefaultPalWorldSettings.ini': No such file or directory
Additional context
I ass-u-me that the top content of the ENV file should be:
Where true/false and numeric values should not be quoted and text values should. If this doesn't work the ENTIRE file will need an overhaul.