Compare commits

...

6 Commits

Author SHA1 Message Date
ae7edc6472 always setup service 2023-11-12 13:56:26 +01:00
3acf301ea8 add ts3server.ini support 2023-11-12 13:53:11 +01:00
ace1912762 better debug output 2022-11-19 14:58:14 +01:00
4e646666c0 dont register some changes 2022-11-19 14:53:05 +01:00
3c463400ca add fallback for admin token 2022-11-19 14:26:29 +01:00
c3f08a7b8f update .gitignore 2022-11-19 14:21:53 +01:00
8 changed files with 32 additions and 19 deletions

3
.gitignore vendored
View File

@@ -1 +1,2 @@
.idea/* /.idea/
*.iml

View File

@@ -8,8 +8,10 @@
status_code: 200 status_code: 200
body_format: json body_format: json
register: ts3_version_info register: ts3_version_info
changed_when: False
- name: "Extract relevant info from result" - name: "Extract relevant info from result"
ansible.builtin.set_fact: ansible.builtin.set_fact:
ts3_version: "{{ ts3_version_info.json.linux.x86_64.version }}" ts3_version: "{{ ts3_version_info.json.linux.x86_64.version }}"
ts3_download_mirror: "{{ ts3_version_info.json.linux.x86_64.mirrors | first }}" ts3_download_mirror: "{{ ts3_version_info.json.linux.x86_64.mirrors | first }}"
changed_when: False

View File

@@ -14,4 +14,5 @@
path: "{{ ts3_base_dir }}/.ts3server_license_accepted" path: "{{ ts3_base_dir }}/.ts3server_license_accepted"
state: "touch" state: "touch"
owner: "{{ ts3_user }}" owner: "{{ ts3_user }}"
group: "{{ ts3_user }}" group: "{{ ts3_user }}"
changed_when: False

View File

@@ -0,0 +1,12 @@
---
- name: "Register ts3server.ini state"
ansible.builtin.stat:
path: "{{ ts3_base_dir }}/ts3server.ini"
register: ts3server_ini
- name: "Create service"
ansible.builtin.template:
src: "teamspeak3.service.j2"
dest: "/etc/systemd/system/teamspeak3.service"
notify:
- "Reload systemd"

View File

@@ -1,18 +1,9 @@
--- ---
- name: "Create service"
ansible.builtin.template:
src: "teamspeak3.service.j2"
dest: "/etc/systemd/system/teamspeak3.service"
notify:
- "Reload systemd"
- name: "Stop service" - name: "Stop service"
ansible.builtin.systemd: ansible.builtin.systemd:
name: "teamspeak3" name: "teamspeak3"
state: "stopped" state: "stopped"
- name: "Download Archive for version {{ ts3_version }}" - name: "Download Archive for version {{ ts3_version }}"
ansible.builtin.get_url: ansible.builtin.get_url:
url: "{{ ts3_download_url }}" url: "{{ ts3_download_url }}"

View File

@@ -12,4 +12,8 @@
ts3_admin_token: "{{ item | regex_search('.*\\|token=(.*)$', '\\1') | first }}" ts3_admin_token: "{{ item | regex_search('.*\\|token=(.*)$', '\\1') | first }}"
when: when:
- "'|token=' in item" - "'|token=' in item"
loop: "{{ ts3_log_content.stdout_lines }}" loop: "{{ ts3_log_content.stdout_lines }}"
rescue:
- name: "Set token to nothing"
ansible.builtin.set_fact:
ts3_admin_token: ""

View File

@@ -20,18 +20,20 @@
loop: loop:
- "10-user-setup.yml" - "10-user-setup.yml"
- "11-setup-dirs.yml" - "11-setup-dirs.yml"
- "30-setup-service.yml"
- debug: - name: "Output versions"
var: ts3_version debug:
- debug: msg:
var: ts3_installed_version - "Newest version: {{ ts3_version }}"
- "Currently installed: {{ ts3_installed_version }}"
- name: "Install TS3 {{ ts3_version }}" - name: "Install TS3 {{ ts3_version }}"
include_tasks: "{{ tasks_file }}" include_tasks: "{{ tasks_file }}"
loop_control: loop_control:
loop_var: "tasks_file" loop_var: "tasks_file"
loop: loop:
- "30-install-ts3.yml" - "31-install-ts3.yml"
- "31-set-query-password.yml" - "31-set-query-password.yml"
- "32-get-admin-token.yml" - "32-get-admin-token.yml"
when: when:
@@ -41,4 +43,4 @@
include_tasks: "33-start-service.yml" include_tasks: "33-start-service.yml"
- name: "Show output" - name: "Show output"
include_tasks: "99-output.yml" include_tasks: "99-output.yml"

View File

@@ -7,7 +7,7 @@ User={{ ts3_user }}
Group={{ ts3_user }} Group={{ ts3_user }}
Type=forking Type=forking
WorkingDirectory={{ ts3_base_dir }}/ WorkingDirectory={{ ts3_base_dir }}/
ExecStart={{ ts3_base_dir }}/ts3server_startscript.sh start ExecStart={{ ts3_base_dir }}/ts3server_startscript.sh start {{ 'inifile=ts3server.ini' if ts3server_ini.stat.exists }}
ExecStop={{ ts3_base_dir }}/ts3server_startscript.sh stop ExecStop={{ ts3_base_dir }}/ts3server_startscript.sh stop
PIDFile={{ ts3_base_dir }}/ts3server.pid PIDFile={{ ts3_base_dir }}/ts3server.pid
RestartSec=5 RestartSec=5