From 64873bb8462b46ee5b2cc5a0657241c8c5f7dde6 Mon Sep 17 00:00:00 2001 From: Alex Tavarez Date: Tue, 18 Nov 2025 21:37:40 -0500 Subject: [PATCH] Added a handler for Aria2 setting up daemon and configuration --- roles/bootstrap/handlers/aria2.yml | 49 ++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 roles/bootstrap/handlers/aria2.yml diff --git a/roles/bootstrap/handlers/aria2.yml b/roles/bootstrap/handlers/aria2.yml new file mode 100644 index 0000000..912ca9e --- /dev/null +++ b/roles/bootstrap/handlers/aria2.yml @@ -0,0 +1,49 @@ +# SPDX-License-Identifier: MIT-0 +--- +# handlers file for bootstrap +- name: Configure Aria2 + listen: aria + when: ansible_facts['user_id'] in hostvars[inventory_hostname].users.keys() + block: + - name: Create Aria2 user configuration directory + block: + - name: Create configuration directory + ansible.builtin.file: + force: false + group: "{{ hostvars[inventory_hostname].users[ansible_facts['user_id']].group | default(ansible_facts['user_id']) }}" + owner: "{{ ansible_facts['user_id'] }}" + path: "{{ ansible_facts['user_dir'] }}/.config" + state: directory + - name: Create configuration directory + when: ansible_facts['user_id'] in hostvars[inventory_hostname].users.keys() + ansible.builtin.file: + force: false + group: "{{ hostvars[inventory_hostname].users[ansible_facts['user_id']].group | default(ansible_facts['user_id']) }}" + owner: "{{ ansible_facts['user_id'] }}" + path: "{{ ansible_facts['user_dir'] }}/.config/aria2" + state: directory + - name: Create Aria2 configuration + ansible.builtin.template: + backup: true + dest: "{{ ansible_facts['user_dir'] }}/.config/aria2/aria2.conf" + force: true + group: "{{ hostvars[inventory_hostname].users[ansible_facts['user_id']].group | default(ansible_facts['user_id']) }}" + owner: "{{ ansible_facts['user_id'] }}" + src: aria2/aria2.conf.j2 + # validate: string + - name: Create Aria2 SystemD user unit service + ansible.builtin.copy: + backup: true + dest: "{{ ansible_facts['user_dir'] }}/.config/systemd/user/aria2cd.service" + force: true + group: "{{ hostvars[inventory_hostname].users[ansible_facts['user_id']].group | default(ansible_facts['user_id']) }}" + owner: "{{ ansible_facts['user_id'] }}" + src: systemd/user/aria2cd.service.j2 + # validate: string + - name: Start Aria2 SystemD user unit service + ansible.builtin.systemd_service: + daemon_reload: true + enabled: true + name: aria2cd + scope: user + state: started