From 8f84cd821701bbfe79c3ecd110d22a10214dd645 Mon Sep 17 00:00:00 2001 From: Tharre Date: Tue, 20 Feb 2018 02:38:41 +0100 Subject: Vastly simplify and refactor the tasks This mainly includes the complete removal of all the logic involved with storing and deleting multiple versions of teamspeak, which is pointless. All the backup logic has been removed as well, because it is both easier and simpler to just rsync (or the ansible equivalent) the hole ts3 folder over to the target machine. --- tasks/install.yml | 79 ++++++++++++++++--------------------------------------- 1 file changed, 22 insertions(+), 57 deletions(-) (limited to 'tasks/install.yml') diff --git a/tasks/install.yml b/tasks/install.yml index 847e719..7176941 100644 --- a/tasks/install.yml +++ b/tasks/install.yml @@ -1,75 +1,40 @@ --- -# install tasks file for teamspeak - -# Start of installation -- name: "Install : Create Teamspeak user" - user: - name: "{{ teamspeak.user }}" - comment: "{{ teamspeak.comment }}" - home: "{{ teamspeak.home }}" - shell: "{{ teamspeak.shell }}" - system: yes - name: "Ensure bzip2 package is installed" package: name: bzip2 state: present -- name: "Install : Download TeamSpeak {{ teamspeak.version }} Server files" +- name: "Prepare temporary file for download" + tempfile: state=file + register: tmpfile + +- 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" + dest: "{{ tmpfile.path }}" checksum: "{{ teamspeak.checksum }}" - owner: "{{ teamspeak.user }}" - group: "{{ teamspeak.user }}" - -- name: "Install : 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: "Install : 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 is defined and userdata.stat.exists == True - -# Created a new directory? Extract the files into it. Overwrites existing. -- name: "Install : Extract TeamSpeak {{ teamspeak.version }} Server files" +- name: "Install teamspeak 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 }}/" + src: "{{ tmpfile.path }}" + remote_src: yes + dest: "{{ teamspeak.home }}" owner: "{{ teamspeak.user }}" group: "{{ teamspeak.user }}" - when: mkdir.changed + extra_opts: [--strip-components=1] + notify: + - Restart teamspeak server -- name: "Install : Create/Update symlink to TeamSpeak {{ teamspeak.version }} Server" +- name: "Cleanup temporary download file" file: - src: "{{ teamspeak.home }}/teamspeak3-server_linux_amd64-{{ teamspeak.version }}" - dest: "{{ teamspeak.home }}/{{ teamspeak.symlink }}" - state: link + state: absent + path: "{{ tmpfile.path }}" + +- name: "Create VERSION file" + copy: + content: "{{ teamspeak.version }}" + dest: "{{ teamspeak.home }}/VERSION" + mode: 0600 owner: "{{ teamspeak.user }}" group: "{{ teamspeak.user }}" - notify: - - Restart TeamSpeak 3 Server - -- name: "Install : 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 - - Restart TeamSpeak 3 Server - -- cgit v1.2.3-70-g09d2