aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Joosten <stefan@sjoosten.nl>2016-07-30 00:10:44 +0200
committerStefan Joosten <stefan@sjoosten.nl>2016-07-30 00:10:44 +0200
commit1d8f4db22eb807a7a47f4f8abb98c66b261f4ea7 (patch)
treeaa05479e93c3d405ede820419e685d6b1c6f1ef2
parent8572c3561235cb6433fd1a43024a6537397a852a (diff)
downloadansible-teamspeak-1d8f4db22eb807a7a47f4f8abb98c66b261f4ea7.tar.gz
ansible-teamspeak-1d8f4db22eb807a7a47f4f8abb98c66b261f4ea7.tar.xz
ansible-teamspeak-1d8f4db22eb807a7a47f4f8abb98c66b261f4ea7.zip
Made a symlink pointing to the current Teamspeak 3 server directory.
-rw-r--r--defaults/main.yml1
-rw-r--r--tasks/main.yml18
-rw-r--r--templates/teamspeak3-server.service.j26
3 files changed, 22 insertions, 3 deletions
diff --git a/defaults/main.yml b/defaults/main.yml
index 3e1fe6b..e374749 100644
--- a/defaults/main.yml
+++ b/defaults/main.yml
@@ -6,5 +6,6 @@ teamspeak:
comment: "Teamspeak 3 user"
home: "/opt/teamspeak"
shell: "/usr/sbin/nologin"
+ symlink: "teamspeak3-server"
version: "3.0.12.4"
checksum: "sha256:6bb0e8c8974fa5739b90e1806687128342b3ab36510944f576942e67df7a1bd9"
diff --git a/tasks/main.yml b/tasks/main.yml
index 557fe01..b2a9458 100644
--- a/tasks/main.yml
+++ b/tasks/main.yml
@@ -54,6 +54,24 @@
tags:
- teamspeak
+# Updater idea
+# 1. Check if user files exist under symlinked directory.
+# 2. true? Copy user files to directory of new TeamSpeak3 server version.
+# 3. Stop currently running TeamSpeak 3 Server (under symlinked directory).
+# 4. Create/Update symlink
+# 5. notify systemd of the update
+# 6. Start new TeamSpeak 3 server
+
+- name: Create/Update symlink to TeamSpeak 3 server {{ teamspeak.version }}
+ file:
+ src: "{{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}/teamspeak3-server_linux_amd64"
+ dest: "{{ teamspeak.home }}/{{ teamspeak.symlink }}"
+ state: link
+ owner: "{{ teamspeak.user }}"
+ group: "{{ teamspeak.user }}"
+ tags:
+ - teamspeak
+
- name: Add TeamSpeak 3 systemctl service file
template:
src: teamspeak3-server.service.j2
diff --git a/templates/teamspeak3-server.service.j2 b/templates/teamspeak3-server.service.j2
index a5a1d42..78d7c67 100644
--- a/templates/teamspeak3-server.service.j2
+++ b/templates/teamspeak3-server.service.j2
@@ -6,9 +6,9 @@ After=network.target
Type=simple
User={{ teamspeak.user }}
Group={{ teamspeak.user }}
-WorkingDirectory={{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}/teamspeak3-server_linux_amd64
-Environment='LD_LIBRARY_PATH="{{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}/teamspeak3-server_linux_amd64/:$LD_LIBRARY_PATH"'
-ExecStart={{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}/teamspeak3-server_linux_amd64/ts3server_minimal_runscript.sh
+WorkingDirectory={{ teamspeak.home }}/{{ teamspeak.symlink }}
+Environment='LD_LIBRARY_PATH="{{ teamspeak.home }}/{{ teamspeak.symlink }}:$LD_LIBRARY_PATH"'
+ExecStart={{ teamspeak.home }}/{{ teamspeak.symlink }}/ts3server_minimal_runscript.sh
[Install]
WantedBy=multi-user.target