93 lines
2.4 KiB
YAML
93 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'
|
|
- '{{ ansible_env.HOME }}/.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
|