-
Notifications
You must be signed in to change notification settings - Fork 4
Description
the games variable
Line 165 in 2bbcb10
| games = OrderedDict(trunk + stable_versions + forks) |
is used to get a list of all versions to load the games data, if a version is not found, the webserver fails to startup and hangs with no error message.
When the issue happens the last lines of the docker logs will be:
| /home/crawl-dev/dgamelaunch-config/server/scripts/run.sh: line 18: 1641 Trace/breakpoint trap sudo -u crawl nohup ttyd -p 8022 -t 'theme={"background": "#000000"}' -W dgamelaunch
dcss-server-1 | rm: cannot remove '/run/webtiles.pid': No such file or directory
dcss-server-1 | * Stopping webtiles server webtiles [ OK ]
which is due to
dcss-server/server/scripts/run.sh
Line 21 in 2bbcb10
| /etc/init.d/webtiles restart |
getting triggered for the startup.
The code stops in the load_games function which uses the data from the games to check it.
https://github.com/crawl/crawl/blob/8da7c38387e0c711f33331f35709d380e40482d0/crawl-ref/source/webserver/webtiles/load_games.py#L83
Not sure if this was a problem before, but now if there is even a single not correctly installed game, this hard to debug error state will happen. I found this when trying to skip installing some games for the server.
You should be able to replicate this by simply doing a fresh install with the install-trunk.sh script so other games are not installed.
My personal fix was to crudely update the games list, Rytisgit@a76e76e, but there is probably a nicer solution to this. It would be best to somehow update this games variable after running the installation for every game version.