44 lines
1.4 KiB
Markdown
44 lines
1.4 KiB
Markdown
# ansible-role-terraria
|
|
|
|
A role to install a Terraria server.
|
|
|
|
## Supported Configuration
|
|
|
|
The role supporst the following distros:
|
|
|
|
* Anything Debian-like
|
|
|
|
The only real dependency is Mono. If you can get that installed some other way, the role will probably work on any distro.
|
|
|
|
## Basic Setup
|
|
|
|
Template out the role, ensuring it has root privileges. Consider setting the following vars:
|
|
|
|
```yaml
|
|
terraria_name: Name of the subdirectory of the server
|
|
terraria_version: The Terraria version string, sans periods (ex. 1412)
|
|
terraria_enabled: Boolean to determine the state of the server (defaults to yes)
|
|
```
|
|
|
|
More handy variables can be found in `defaults`.
|
|
|
|
You can manage server-config through the `terraria_config` dictionary:
|
|
|
|
```yaml
|
|
terraria_config:
|
|
maxplayers: 8
|
|
password: supersecret
|
|
```
|
|
|
|
Run the play and enjoy.
|
|
|
|
## Administration
|
|
|
|
The role will install servers as systemd units. A server named `default` will have the unit `terraria@default.service`. The server runs as its own user.
|
|
|
|
To access the server console, invoke `screen` as the `terraria` user. For example, to access the console of a server named `default`, use `sudo -u terraria screen -r default`.
|
|
|
|
## TODO
|
|
|
|
The biggest issue is that Redigit doesn't have a very... friendly server URL scheme. Often, if you want to download an updated server package, you'll have to manually change the `terraria_downloadurl`. Solutions to this problem are welcome.
|