63 lines
1.7 KiB
YAML
63 lines
1.7 KiB
YAML
#SPDX-License-Identifier: MIT-0
|
|
---
|
|
# tasks file for nextcloud
|
|
- name: Create docker compose directory
|
|
file:
|
|
path: "{{ nextcloud_docker_compose_dir }}"
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: Create nextcloud data directory
|
|
file:
|
|
path: "{{ nextcloud_docker_volume_dir }}/data"
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: Create postgres data directory
|
|
file:
|
|
path: "{{ nextcloud_docker_volume_dir }}/postgresql"
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: Create docker-compose file for nextcloud
|
|
template:
|
|
src: docker-compose.yml.j2
|
|
dest: "{{ nextcloud_docker_compose_dir }}/docker-compose.yml"
|
|
mode: '0644'
|
|
|
|
- name: Create nginx template
|
|
template:
|
|
src: nginx.conf.j2
|
|
dest: "{{ nextcloud_docker_compose_dir }}/nginx.conf"
|
|
mode: '0644'
|
|
notify: Restart nginx container
|
|
|
|
- name: Create database initialization script
|
|
template:
|
|
src: init-db.sql.j2
|
|
dest: "{{ nextcloud_docker_compose_dir }}/init-db.sql"
|
|
mode: '0644'
|
|
|
|
- name: Start nextcloud container
|
|
community.docker.docker_compose_v2:
|
|
project_src: "{{ nextcloud_docker_compose_dir }}"
|
|
state: present
|
|
|
|
- name: Wait for Nextcloud to be ready
|
|
ansible.builtin.shell:
|
|
cmd: docker compose exec -T nextcloud php /var/www/html/occ status --output=json
|
|
chdir: "{{ nextcloud_docker_compose_dir }}"
|
|
retries: 30
|
|
delay: 5
|
|
register: nextcloud_ready
|
|
until:
|
|
- nextcloud_ready.rc == 0
|
|
- (nextcloud_ready.stdout | from_json).installed == true
|
|
changed_when: false
|
|
|
|
- name: Install nextcloud plugins
|
|
ansible.builtin.include_tasks: plugins.yml
|
|
|
|
- name: Configure nextcloud collabora
|
|
ansible.builtin.include_tasks: collabora.yml
|
|
when: nextcloud_enable_collabora
|