aboutsummaryrefslogtreecommitdiffstats
path: root/tasks
diff options
context:
space:
mode:
Diffstat (limited to 'tasks')
-rw-r--r--tasks/config.yml20
-rw-r--r--tasks/install.yml69
-rw-r--r--tasks/main.yml78
3 files changed, 84 insertions, 83 deletions
diff --git a/tasks/config.yml b/tasks/config.yml
index 11e57ff..3e9f003 100644
--- a/tasks/config.yml
+++ b/tasks/config.yml
@@ -1,23 +1,15 @@
---
-# Config files and actions for teamspeak3 server
-- name: Short facts
+# configuration tasks for teamspeak
+- name: Set TeamSpeak 3 Server directory fact
set_fact:
ts3server_dir: "{{ teamspeak.home }}/{{ teamspeak.symlink }}/teamspeak3-server_linux_amd64"
-- name: Create ts3server.ini
+- name: Create TeamSpeak 3 Server configuration file
template:
src: ts3server.ini.j2
- dest: "{{ ts3server_dir }}/ts3server.ini"
+ dest: "{{ ts3server_dir }}/{{ teamspeak_ini_filename }}"
mode: 0644
owner: "{{ teamspeak.user }}"
group: "{{ teamspeak.user }}"
- register: ts3server_ini
-
-- name: Create teamspeak 3 server logs folder
- file:
- path: "{{ teamspeak_ini.logpath }}"
- state: directory
- mode: 0755
- owner: "{{ teamspeak.user }}"
- group: "{{ teamspeak.user }}"
-
+ notify:
+ - Restart TeamSpeak 3 Server
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
+
diff --git a/tasks/main.yml b/tasks/main.yml
index 4d93664..1b171df 100644
--- a/tasks/main.yml
+++ b/tasks/main.yml
@@ -12,79 +12,19 @@
paths:
- ../vars
-- 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
+# Installation of TeamSpeak 3 Server
+- include: install.yml
+# Configuration of TeamSpeak 3 Server (if requested)
- include: config.yml
- when: teamspeak_ini is defined or teamspeak.ini_file is none and teamspeak_ini.disable is false
+ when: teamspeak_ini_enabled
-- 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
-
-# Perform the "Reload systemd" (and possibly queued clean-up) handler now.
-# Before we start using the new/changed .service file.
+# Perform the running of handlers now
+# So we can do "Reload systemd" (and possibly queued clean-up)
+# before we start using the new/changed .service file.
- meta: flush_handlers
-
-- name: Enable and start TeamSpeak 3 server
+# Make sure TeamSpeak 3 Server is started and enabled
+- name: Enable and start TeamSpeak 3 Server
service:
name: teamspeak3-server
state: started