blob: e75c0d1c2d008d1fc0e6950cf2a493eca3831585 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
---
- name: add minecraft user
become: yes
user: name="{{minecraft_user}}" home="{{minecraft_dir}}"
- name: install adoptopenjdk
include_tasks: adoptopenjdk.yaml
- name: set minecraft fork
set_fact: minecraft_url="{{minecraft_vanilla_url}}"
when: minecraft_fork == "vanilla"
- name: set minecraft fork
set_fact: minecraft_url="{{minecraft_paper_url}}"
when: minecraft_fork == "paper"
- name: create minecraft dir
become: yes
file:
path: "{{minecraft_dir}}"
owner: "{{minecraft_user}}"
group: "{{minecraft_user}}"
mode: "0755"
state: "directory"
- name: download minecraft
become: yes
get_url:
url: "{{minecraft_url}}"
dest: "{{minecraft_dir}}/server.jar"
mode: "0755"
notify: restart minecraft
- name: configure minecraft eula
become: yes
copy:
src: "{{item}}"
dest: "{{minecraft_dir}}/{{item}}"
owner: "{{minecraft_user}}"
group: "{{minecraft_user}}"
loop:
- "eula.txt"
notify: restart minecraft
- name: configure minecraft ops
become: yes
template:
src: "ops.json.j2"
dest: "{{minecraft_dir}}/ops.json"
owner: "{{minecraft_user}}"
group: "{{minecraft_user}}"
notify: restart minecraft
- name: create minecraft plugins dir
become: yes
file:
path: "{{minecraft_dir}}/plugins"
owner: "{{minecraft_user}}"
group: "{{minecraft_user}}"
mode: "0755"
state: "directory"
- name: install plugins
include_tasks: "{{item}}.yaml"
loop: "{{minecreat_paper_plugins_enabled}}"
when: minecraft_fork == "paper"
- name: create server.properties
become: yes
file:
path: "{{minecraft_dir}}/server.properties"
state: "touch"
access_time: "preserve"
modification_time: "preserve"
owner: "{{minecraft_user}}"
group: "{{minecraft_user}}"
- name: configure server.properties
become: yes
lineinfile:
path: "{{minecraft_dir}}/server.properties"
regexp: "^{{item.key}}="
line: "{{item.key}}={{item.value}}"
notify: restart minecraft
loop:
- {key: "motd", value: "{{minecraft_motd}}"}
- {key: "level-seed", value: "{{minecraft_seed}}"}
- {key: "difficulty", value: "{{minecraft_difficulty}}"}
- name: install systemd service
become: yes
template:
src: "minecraft.service.j2"
dest: "/lib/systemd/system/minecraft.service"
notify: restart minecraft
- name: ensure service is started
become: yes
systemd: name="minecraft.service" enabled="yes" state="started"
|