debian-setup/tasks/transmission.yml

94 lines
2.4 KiB
YAML

---
# Note: requires an up-to-date ansible version to make us of docker compose file
## TODO: use tracker blocklist
#
- name: Disable system process
become: true
ansible.builtin.systemd:
name: transmission-daemon
state: stopped
- name: Create Transmission directories
become: true
ansible.builtin.file:
path: "{{ item.path }}"
owner: "{{ item.owner }}"
group: "{{ item.group }}"
mode: "0755"
state: directory
loop:
- path: "{{ transmission_app_dir }}"
owner: root
group: root
- path: "{{ transmission_app_dir }}/config"
owner: root
group: root
- path: "{{ transmission_app_dir }}/nginx.conf.d"
owner: sonny
group: sonny
- path: "{{ transmission_download_dir }}"
owner: sonny
group: sonny
- path: "{{ transmission_incomplete_dir }}"
owner: sonny
group: sonny
- name: Remove previous transmission configurations
become: true
ansible.builtin.file:
path: "{{ item }}"
state: absent
loop:
- /etc/systemd/system/transmission-daemon.service.d
- /home/sonny/.config/transmission-daemon
- name: Copy Dockerfile
become: true
ansible.builtin.copy:
src: files/transmission/Dockerfile
dest: "{{ transmission_app_dir }}/Dockerfile"
owner: sonny
group: sonny
mode: "0755"
- name: Copy docker compose configuration
become: true
ansible.builtin.template:
src: templates/transmission/docker-compose.j2
dest: "{{ transmission_app_dir }}/docker-compose.yml"
owner: sonny
group: sonny
mode: "0755"
# Prevents Tranmission from overwiting configuration files
- name: Stop docker compose containers
community.docker.docker_compose_v2:
project_src: "{{ transmission_app_dir }}"
state: stopped
- name: Copy Transmission configuration
become: true
ansible.builtin.template:
src: "templates/transmission/config.j2"
dest: "{{ transmission_app_dir }}/config/settings.json"
owner: sonny
group: sonny
mode: "0755"
- name: Copy NGINX configuration
become: true
ansible.builtin.template:
src: templates/transmission/nginx.j2
dest: "{{ transmission_app_dir }}/nginx.conf.d/default.conf"
owner: sonny
group: sonny
mode: "0755"
- name: Start container
community.docker.docker_compose_v2:
project_src: "{{ transmission_app_dir }}"
build: always
remove_orphans: true
state: restarted
pull: always