debian-setup/tasks/radicale.yml

125 lines
3 KiB
YAML

- name: Stop previous radicale service
become: true
ansible.builtin.systemd:
name: radicale
state: stopped
enabled: false
register: radicale_disable
failed_when: >
radicale_disable.stderr is defined and
"'Unit radicale.service not loaded' not in radicale_disable.stderr"
- name: Remove previous radicale user
become: true
ansible.builtin.user:
name: radicale
state: absent
- name: Remove radicale sudo entry
become: true
ansible.builtin.file:
path: /etc/sudoers.d/10-radicale
state: absent
- name: Remove radicale virtualenv directory
become: true
ansible.builtin.file:
path: '/usr/local/lib/radicale'
state: absent
- name: Remove Radicale files
become: true
ansible.builtin.file:
path: '{{ item }}'
state: absent
loop:
- /etc/nginx/radicale
- /etc/ssl/localcerts/radicale
- /etc/radicale/
- /etc/systemd/system/radicale.service
- name: Create Radicale directories
become: true
ansible.builtin.file:
path: '{{ item.path }}'
owner: '{{ item.owner }}'
group: '{{ item.group }}'
mode: '0755'
state: directory
loop:
- path: '{{ radicale_app_dir }}'
owner: root
group: root
- path: '{{ radicale_collection_dir }}'
owner: sonny
group: sonny
- path: '{{ radicale_app_dir }}/nginx.conf.d'
owner: sonny
group: sonny
- name: Copy Radicale docker file
become: true
ansible.builtin.template:
src: 'templates/radicale/dockerfile.j2'
dest: '{{ radicale_app_dir }}/Dockerfile'
owner: sonny
group: sonny
mode: '0755'
- name: Copy docker compose
become: true
ansible.builtin.template:
src: 'templates/radicale/docker-compose.j2'
dest: '{{ radicale_app_dir }}/docker-compose.yml'
owner: sonny
group: sonny
mode: '0755'
- name: Copy Radicale configuration
become: true
ansible.builtin.template:
src: 'templates/radicale/conf.j2'
dest: '{{ radicale_app_dir }}/config'
owner: sonny
group: sonny
mode: '0755'
- name: Copy Radicale user file
become: true
ansible.builtin.copy:
src: 'files/radicale/radicale_users'
dest: '{{ radicale_app_dir }}/radicale_users'
owner: sonny
group: sonny
mode: '0750'
- name: Copy NGINX configuration
become: true
ansible.builtin.template:
src: 'templates/radicale/nginx.j2'
dest: '{{ radicale_app_dir }}/nginx.conf.d/default.conf'
owner: sonny
group: sonny
mode: '0755'
- name: Stop current containers
community.docker.docker_compose_v2:
project_src: '{{ radicale_app_dir }}'
state: stopped
- name: Pull missing image
community.docker.docker_compose_v2:
project_src: '{{ radicale_app_dir }}'
build: always
state: stopped
- name: Remove dangling containers
community.docker.docker_compose_v2:
project_src: '{{ radicale_app_dir }}'
remove_orphans: true
state: stopped
- name: Start container
community.docker.docker_compose_v2:
project_src: '{{ radicale_app_dir }}'
state: present