ansible-role-nextcloud-docker/tasks/main.yml

95 lines
2.3 KiB
YAML

---
- name: Create directory if it does not exists
become: yes
file:
path: "{{ compose_dir }}/nextcloud"
state: directory
mode: 0755
- name: Place docker-compose file
become: yes
template:
src: templates/docker-compose.yml.j2
dest: "{{ compose_dir }}/nextcloud/docker-compose.yml"
mode: 0700
- name: Place nextcloud env file
become: yes
template:
src: templates/.nextcloud.env.j2
dest: "{{ compose_dir }}/nextcloud/nextcloud.env"
mode: 0600
- name: Place postgres env file
become: yes
template:
src: templates/.postgres.env.j2
dest: "{{ compose_dir }}/nextcloud/postgres.env"
mode: 0600
- name: Place redis env file
become: yes
template:
src: templates/.redis.env.j2
dest: "{{ compose_dir }}/nextcloud/redis.env"
mode: 0600
- name: Create nginx directory for nextcloud
become: yes
file:
path: "{{ compose_dir }}/nextcloud/web"
state: directory
mode: 0755
- name: Place docker nginx Dockerfile
become: yes
copy:
src: files/web/Dockerfile
dest: "{{ compose_dir }}/nextcloud/web/Dockerfile"
mode: 0700
- name: Copy docker nginx config
become: yes
copy:
src: files/web/nginx.conf
dest: "{{ compose_dir }}/nextcloud/web/nginx.conf"
mode: 0600
- name: Update and start services
become: yes
docker_compose:
project_src: "{{ compose_dir }}/nextcloud"
pull: yes
state: present
remove_orphans: yes
notify:
- Add missing indices
- Add missing primary keys
- Convert filecache bigint
register: output
- name: Check all containers are running
ansible.builtin.assert:
that:
- "output.ansible_facts.nextcloud.nextcloud.state.running": true
- "output.ansible_facts.nextcloud-nginx.nextcloud-nginx.state.running": true
- "output.ansible_facts.nextcloud-cron.nextcloud-cron.state.running": true
- "output.ansible_facts.nextcloud-redis.nextcloud-redis.state.running": true
- "output.ansible_facts.nextcloud-postgres.nextcloud-postgres.state.running": true
- import_tasks: install_apps.yml
- include_tasks: config_php.yml
vars:
_param: "{{ item }}"
with_items: "{{ nextcloud_settings }}"
- name: Place reverse proxy conf
become: yes
template:
src: templates/reverse_proxy.conf.j2
dest: "/etc/nginx/conf.d/nextcloud.conf"
mode: 0600
notify: Check and Reload nginx