- name: Include nextcloud variables include_vars: nextcloud.yml - name: Create nextcloud directory file: path: /opt/nextcloud state: directory owner: "{{ docker_user.name }}" mode: "{{ docker_compose_directory_mask }}" become: true - name: Install nextcloud compose file template: src: files/nextcloud/docker-compose.yml dest: /opt/nextcloud/docker-compose.yml mode: "{{ docker_compose_file_mask }}" owner: "{{ docker_user.name }}" validate: /usr/bin/docker-compose -f %s config register: compose_file become: true - name: Create nextcloud config directory file: path: /opt/nextcloud/nextcloud/config state: directory mode: "{{ docker_compose_directory_mask }}" become: true - name: Install nextcloud config template: src: files/nextcloud/config.php dest: /opt/nextcloud/nextcloud/config/config.php mode: "{{ docker_compose_file_mask }}" owner: "{{ docker_user.name }}" register: config_file become: true - name: Install nextcloud custom nginx config template: src: files/nextcloud/default.conf dest: /opt/nextcloud/nextcloud/nginx-default.conf mode: "{{ docker_compose_file_mask }}" owner: "{{ docker_user.name }}" register: nginx_config become: true - name: Cycle nextcloud container docker_compose: project_src: /opt/nextcloud pull: true remove_orphans: true remove_volumes: true state: "{{ item }}" when: compose_file.changed or config_file.changed or nginx_config.changed loop: - absent - present