Using a world name with spaces does not properly function.
TASK [terraria_server : Save and stop the server (if applicable)] ********************************************************************************************************
[WARNING]: Consider using 'become', 'become_method', and 'become_user' rather than running su
fatal: [terraria.example.com]: FAILED! => {"changed": true, "cmd": ["su", "-", "terraria", "-s", "/bin/sh", "-c", "screen -S Ice Land7777 -p0 -X stuff \"exit^M\""], "delta": "0:00:00.017726", "end": "2018-05-07 04:18:46.741848", "msg": "non-zero return code", "rc": 1, "start": "2018-05-07 04:18:46.724122", "stderr": "", "stderr_lines": [], "stdout": "Must be connected to a terminal.", "stdout_lines": ["Must be connected to a terminal."]}
...ignoring
TASK [terraria_server : Allow time for server to save and cleanly exit] **************************************************************************************************
Pausing for 5 seconds
(ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
ok: [terraria.example.com]
TASK [terraria_server : Stop the existing screen session (if applicable)] ************************************************************************************************
fatal: [terraria.example.com]: FAILED! => {"changed": true, "cmd": ["su", "-", "terraria", "-s", "/bin/sh", "-c", "screen -S Ice Land7777 -p0 -X stuff \"exit^M\""], "delta": "0:00:00.018617", "end": "2018-05-07 04:18:53.003607", "msg": "non-zero return code", "rc": 1, "start": "2018-05-07 04:18:52.984990", "stderr": "", "stderr_lines": [], "stdout": "Must be connected to a terminal.", "stdout_lines": ["Must be connected to a terminal."]}
...ignoring
TASK [terraria_server : start the screen session] ************************************************************************************************************************
changed: [terraria.example.com]
TASK [terraria_server : start the server in the screen session] **********************************************************************************************************
fatal: [terraria.example.com]: FAILED! => {"changed": true, "cmd": ["su", "-", "terraria", "-s", "/bin/sh", "-c", "/opt/terraria/worlds/Ice Land/bin/start.sh"], "delta": "0:00:00.015358", "end": "2018-05-07 04:18:55.778558", "msg": "non-zero return code", "rc": 127, "start": "2018-05-07 04:18:55.763200", "stderr": "-su: 1: /opt/terraria/worlds/Ice: not found", "stderr_lines": ["-su: 1: /opt/terraria/worlds/Ice: not found"], "stdout": "", "stdout_lines": []}
to retry, use: --limit @/Users/jose/Desktop/site.retry
PLAY RECAP ***************************************************************************************************************************************************************
terraria.example.com : ok=26 changed=17 unreachable=0 failed=1
world=/opt/terraria/worlds/Ice Land/Ice Land.wld
autocreate=2
seed=ThisIsNotReallyASeed
worldname=Ice Land
difficulty=0
maxplayers=5
port=7777
motd=A new beginning...
worldpath=/opt/terraria/worlds/Ice Land
banlist=/opt/terraria/worlds/Ice Land/banlist.txt
secure=0
language=en-US
npcstream=60
priority=1
The server file doesn't exist, but as we've defined autocreate values so we should not get prompted at start up for manual input - but are definitely getting prompted:
$ bin/TerrariaServer.bin.x86_64 -config config.ini
Terraria Server v1.3.5.3
n New World
d <number>Delete World