diff --git a/ansible/main.yml b/ansible/main.yml index c301f2e..53b4e25 100644 --- a/ansible/main.yml +++ b/ansible/main.yml @@ -78,6 +78,7 @@ - freshrss - atuin - karakeep + - syncthing - hosts: ingress roles: diff --git a/ansible/roles/syncthing/files/docker-compose.yml b/ansible/roles/syncthing/files/docker-compose.yml new file mode 100644 index 0000000..ece9679 --- /dev/null +++ b/ansible/roles/syncthing/files/docker-compose.yml @@ -0,0 +1,12 @@ +services: + syncthing: + image: syncthing/syncthing:latest + restart: unless-stopped + network_mode: host + hostname: "{{ ansible_hostname }}" + environment: + - TZ={{ timezone }} + - PUID={{ docker_user.id }} + - PGID={{ docker_user.id }} + volumes: + - /mnt/tank/files:/var/syncthing diff --git a/ansible/roles/syncthing/handlers/main.yml b/ansible/roles/syncthing/handlers/main.yml new file mode 100644 index 0000000..77364b5 --- /dev/null +++ b/ansible/roles/syncthing/handlers/main.yml @@ -0,0 +1,4 @@ +- name: restart syncthing + shell: + chdir: /opt/syncthing + cmd: "{{ docker_update_command }}" diff --git a/ansible/roles/syncthing/tasks/main.yml b/ansible/roles/syncthing/tasks/main.yml new file mode 100644 index 0000000..14a16ea --- /dev/null +++ b/ansible/roles/syncthing/tasks/main.yml @@ -0,0 +1,16 @@ +- name: Create install directory + file: + path: /opt/syncthing + state: directory + owner: "{{ docker_user.name }}" + mode: "{{ docker_compose_directory_mask }}" + + +- name: Install compose file + template: + src: files/docker-compose.yml + dest: /opt/syncthing/docker-compose.yml + mode: "{{ docker_compose_file_mask }}" + owner: "{{ docker_user.name }}" + validate: docker compose -f %s config + notify: restart syncthing