110 lines
6.7 KiB
YAML
110 lines
6.7 KiB
YAML
---
|
|
- hosts: games
|
|
vars:
|
|
apt:
|
|
packages:
|
|
- { package: "openjdk-13-jre-headless", state: present }
|
|
- { package: "unzip", state: present }
|
|
- { package: "mono-complete", state: present }
|
|
systemd:
|
|
services:
|
|
- { name: "paper-server", enabled: true, action: restarted }
|
|
- { name: "factorio", enabled: true, action: restarted }
|
|
- { name: "tshock", enabled: true, action: restarted }
|
|
file:
|
|
- { path: "/etc/paper", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "/etc/factorio", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "/etc/factorio/config", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "{{ minecraft.paths.data }}/plugins", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "{{ minecraft.paths.data }}/worlds", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "{{ minecraft.paths.data }}/plugins/Essentials", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "{{ minecraft.paths.data }}/plugins/WorldGuard", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "{{ minecraft.paths.data }}/plugins/WorldGuard/worlds", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "{{ minecraft.paths.data }}/plugins/WorldGuard/worlds/{{ minecraft.settings.level_name }}", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "{{ minecraft.paths.data }}/plugins/bPermissions", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "{{ minecraft.paths.data }}/plugins/bPermissions/global", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
- { path: "/opt/terraria", owner: "nobody", group: "nogroup", mode: "760", state: directory }
|
|
mounts:
|
|
- { uuid: 'adee3616-5461-4279-b587-fea73ba468a9', dest: '{{ minecraft.paths.data }}', state: 'mounted', fstype: 'xfs' }
|
|
- { uuid: '652d7dff-ca35-418d-b6dc-f50814adccba', dest: '{{ factorio.paths.data }}', state: 'mounted', fstype: 'xfs' }
|
|
- { uuid: 'a6df145a-42f3-41a3-8135-4c16b3692db1', dest: '{{ terraria.paths.data }}', state: 'mounted', fstype: 'xfs' }
|
|
factorio:
|
|
paths:
|
|
data: "/mnt/factorio"
|
|
bind:
|
|
address: "0.0.0.0"
|
|
port: "{{ global.games.factorio.port }}"
|
|
terraria:
|
|
world: "Main"
|
|
bind:
|
|
ip: "{{ ansible_ens10.ipv4.address }}"
|
|
port: "{{ global.games.terraria.port }}"
|
|
paths:
|
|
data: "/mnt/terraria"
|
|
configs:
|
|
- "config.json"
|
|
- "sscconfig.json"
|
|
minecraft:
|
|
paths:
|
|
data: "/mnt/minecraft"
|
|
plugins:
|
|
- { url: "https://rymatemc.co.uk/jenkins/job/bPermissions/184/artifact/bukkit/build/libs/bPermissions-Bukkit-2.12.4-all.jar", name: "bPermissions-Bukkit-2.12.4-all.jar" }
|
|
- { url: "https://ci.ender.zone/job/EssentialsX/926/artifact/Essentials/target/EssentialsX-2.17.2.112.jar", name: "EssentialsX.jar" }
|
|
- { url: "https://ci.ender.zone/job/EssentialsX/926/artifact/EssentialsAntiBuild/target/EssentialsXAntiBuild-2.17.2.112.jar", name: "EssentialsXAntiBuild.jar" }
|
|
- { url: "https://ci.ender.zone/job/EssentialsX/926/artifact/EssentialsChat/target/EssentialsXChat-2.17.2.112.jar", name: "EssentialsXChat.jar" }
|
|
- { url: "https://ci.ender.zone/job/EssentialsX/926/artifact/EssentialsGeoIP/target/EssentialsXGeoIP-2.17.2.112.jar", name: "EssentialsXGeoIP.jar" }
|
|
- { url: "https://ci.ender.zone/job/EssentialsX/926/artifact/EssentialsProtect/target/EssentialsXProtect-2.17.2.112.jar", name: "EssentialsXProtect.jar" }
|
|
- { url: "https://ci.ender.zone/job/EssentialsX/926/artifact/EssentialsSpawn/target/EssentialsXSpawn-2.17.2.112.jar", name: "EssentialsXSpawn.jar" }
|
|
configs:
|
|
- "server.properties"
|
|
- "ops.json"
|
|
- "whitelist.json"
|
|
- "plugins/bPermissions/config.yml"
|
|
- "plugins/Essentials/motd.txt"
|
|
- "plugins/bPermissions/global/groups.yml"
|
|
- "plugins/bPermissions/global/users.yml"
|
|
- "plugins/Essentials/config.yml"
|
|
- "plugins/WorldGuard/worlds/world/regions.yml" # Uses level_name but cannot be used because of "loops"
|
|
local_plugins:
|
|
- "plugins/worldguard-bukkit-7.0.2.jar"
|
|
- "plugins/worldedit-bukkit-7.1.0.jar"
|
|
- "plugins/Vault.jar"
|
|
files:
|
|
- "server-icon.png"
|
|
listen:
|
|
ip: '{{ ansible_ens10.ipv4.address }}'
|
|
port: '{{ global.games.minecraft.port }}'
|
|
settings:
|
|
players: '24'
|
|
rcon:
|
|
enabled: "true"
|
|
port: 25575
|
|
password: "{{ vault_minecraft.rcon.password|default() }}"
|
|
motd: "\\u00A74\\u00A7l[RedXen]\\u00A7r \\u00A76Now more stable than ever on AMD Epyc\\u00A7r\\n\\u00A71Public server - hosted by \\u00A74redxen.eu"
|
|
whitelist: "false"
|
|
difficulty: "medium"
|
|
online: "true"
|
|
build_height: 256
|
|
view_distance: 12
|
|
level_name: "world"
|
|
gamemode: "survival"
|
|
pvp: "true"
|
|
spawn_protection: 32
|
|
vault:
|
|
roles:
|
|
- "minecraft"
|
|
- "factorio"
|
|
firewall:
|
|
- { port: "{{ factorio.bind.port }}", ipv: "v4", proto: "udp" }
|
|
- { port: "{{ factorio.bind.port }}", ipv: "v6", proto: "udp" }
|
|
roles:
|
|
- vault
|
|
- mounts
|
|
- apt
|
|
- file
|
|
- factorio
|
|
- minecraft
|
|
- terraria
|
|
- systemd
|
|
- firewall
|