89 lines
1.7 KiB
YAML
89 lines
1.7 KiB
YAML
- name: ensure aria2 is installed
|
|
package:
|
|
name=aria2
|
|
state=present
|
|
tags:
|
|
- install
|
|
|
|
- name: ensure aria2 group exists
|
|
group:
|
|
name=aria2
|
|
system=yes
|
|
state=present
|
|
tags:
|
|
- group
|
|
- user
|
|
- name: ensure aria2 user exists
|
|
user:
|
|
name: aria2
|
|
group: aria2
|
|
comment: aria2 Download Manager
|
|
home: /var/lib/aria2
|
|
createhome: true
|
|
shell: /sbin/nologin
|
|
system: true
|
|
state: present
|
|
|
|
- name: ensure aria2 is configured
|
|
template:
|
|
src=aria2.conf.j2
|
|
dest=/etc/aria2.conf
|
|
mode=0644
|
|
notify: restart aria2
|
|
|
|
- name: ensure aria2 download directory exists
|
|
file:
|
|
path={{ aria2_download_dir }}
|
|
owner=aria2
|
|
group=aria2
|
|
mode=755
|
|
state=directory
|
|
|
|
- name: ensure aria2 state file exists
|
|
copy:
|
|
dest=/var/lib/aria2/aria2.state
|
|
content=
|
|
force=no
|
|
|
|
- name: ensure aria2 systemd unit exists
|
|
copy:
|
|
src=aria2.service
|
|
dest=/etc/systemd/system/aria2.service
|
|
mode=0644
|
|
notify: reload systemd
|
|
|
|
- name: ensure firewall is configured for aria2
|
|
firewalld:
|
|
port: '{{ item }}'
|
|
permanent: false
|
|
immediate: true
|
|
state: enabled
|
|
with_items:
|
|
- 6800/tcp
|
|
- '{{ aria2_listen_ports }}/tcp'
|
|
- '{{ aria2_dht_listen_ports }}/tcp'
|
|
notify: save firewalld configuration
|
|
|
|
- name: ensure aria2 service starts at boot
|
|
service:
|
|
name=aria2
|
|
enabled=yes
|
|
- meta: flush_handlers
|
|
- name: ensure aria2 service is running
|
|
service:
|
|
name=aria2
|
|
state=started
|
|
|
|
- name: ensure aria2 web ui is configured
|
|
template:
|
|
src=configuration.js.j2
|
|
dest=/var/lib/aria2/webui/configuration.js
|
|
mode=0644
|
|
|
|
- name: ensure apache is configured to serve aria2 web ui
|
|
copy:
|
|
src=aria2.httpd.conf
|
|
dest=/etc/httpd/conf.d/aria2.conf
|
|
mode=0644
|
|
notify: reload httpd
|