Files
sovereign/roles/nextcloud/tasks/main.yml
T
2026-03-23 15:15:27 -03:00

55 lines
1.8 KiB
YAML

---
- name: Create Nextcloud directories
ansible.builtin.file:
path: "{{ item }}"
state: directory
mode: '0755'
loop:
- "{{ nextcloud_data_dir }}"
- "{{ nextcloud_data_dir }}/data"
- name: Deploy Nextcloud docker-compose
ansible.builtin.template:
src: docker-compose.yml.j2
dest: "{{ nextcloud_data_dir }}/docker-compose.yml"
mode: '0644'
notify: restart nextcloud
- name: Start Nextcloud
community.docker.docker_compose_v2:
project_src: "{{ nextcloud_data_dir }}"
state: present
when: not (molecule_test_mode | default(false))
- name: Wait for Nextcloud to be ready
ansible.builtin.command:
cmd: docker exec -u www-data nextcloud php occ status --output=json
register: nc_status
until: (nc_status.stdout | from_json).installed is defined and (nc_status.stdout | from_json).installed
retries: 30
delay: 10
changed_when: false
when: not (molecule_test_mode | default(false))
- name: Copy tenant logo into Nextcloud container volume
ansible.builtin.copy:
src: "{{ tenant_logo_local_path }}"
dest: "{{ nextcloud_data_dir }}/data/sovereign-logo.png"
mode: '0644'
when: tenant_logo_local_path | default('') != ''
- name: Configure Nextcloud theming — name and colour
ansible.builtin.command:
cmd: docker exec -u www-data nextcloud php occ theming:config {{ item.key }} "{{ item.value }}"
loop:
- { key: name, value: "{{ tenant_name }}" }
- { key: color, value: "{{ tenant_primary_color | default('#2563eb') }}" }
changed_when: false
when: not (molecule_test_mode | default(false))
- name: Configure Nextcloud theming — logo
ansible.builtin.command:
cmd: docker exec -u www-data nextcloud php occ theming:config logo /var/www/html/sovereign-logo.png
when: tenant_logo_local_path | default('') != '' and not (molecule_test_mode | default(false))
changed_when: false