aboutsummaryrefslogtreecommitdiffstats
path: root/tasks/install.yml
diff options
context:
space:
mode:
Diffstat (limited to 'tasks/install.yml')
-rw-r--r--tasks/install.yml69
1 files changed, 69 insertions, 0 deletions
diff --git a/tasks/install.yml b/tasks/install.yml
new file mode 100644
index 0000000..98d7253
--- /dev/null
+++ b/tasks/install.yml
@@ -0,0 +1,69 @@
+---
+# install tasks file for teamspeak
+
+# Start of installation
+- name: Create Teamspeak user
+ user:
+ name: "{{ teamspeak.user }}"
+ comment: "{{ teamspeak.comment }}"
+ home: "{{ teamspeak.home }}"
+ shell: "{{ teamspeak.shell }}"
+ system: yes
+
+- name: Download TeamSpeak {{ teamspeak.version }} Server files
+ get_url:
+ url: "http://dl.4players.de/ts/releases/{{ teamspeak.version }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}.tar.bz2"
+ dest: "{{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}.tar.bz2"
+ checksum: "{{ teamspeak.checksum }}"
+ owner: "{{ teamspeak.user }}"
+ group: "{{ teamspeak.user }}"
+
+- name: Create TeamSpeak {{ teamspeak.version }} Server directory
+ file:
+ path: "{{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}"
+ state: directory
+ owner: "{{ teamspeak.user }}"
+ group: "{{ teamspeak.user }}"
+ register: mkdir
+
+# If a new directory has been created, check for (current) user data.
+- name: Checking for a currently installed TeamSpeak 3 Server with user data
+ stat:
+ path: "{{ teamspeak.home }}/{{ teamspeak.symlink }}/teamspeak3-server_linux_amd64/files"
+ register: userdata
+ when: mkdir.changed
+
+# If user data has been found, this is an upgrade situation.
+- include: ts3update.yml
+ when: userdata.stat.exists is defined and userdata.stat.exists == True
+
+# Created a new directory? Extract the files into it. Overwrites existing.
+- name: Extract TeamSpeak {{ teamspeak.version }} Server files
+ unarchive:
+ copy: no
+ src: "{{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}.tar.bz2"
+ dest: "{{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}/"
+ owner: "{{ teamspeak.user }}"
+ group: "{{ teamspeak.user }}"
+ when: mkdir.changed
+
+- name: Create/Update symlink to TeamSpeak {{ teamspeak.version }} Server
+ file:
+ src: "{{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}"
+ dest: "{{ teamspeak.home }}/{{ teamspeak.symlink }}"
+ state: link
+ owner: "{{ teamspeak.user }}"
+ group: "{{ teamspeak.user }}"
+ notify:
+ - Restart TeamSpeak 3 Server
+
+- name: Install TeamSpeak 3 systemctl service file
+ template:
+ src: teamspeak3-server.service.j2
+ dest: "{{ systemd_service_file_path }}/teamspeak3-server.service"
+ mode: 0644
+ owner: root
+ group: root
+ notify:
+ - Reload systemd
+