--- - name: Create application directory ansible.builtin.file: state: directory dest: "{{ nextcloud_local_path }}" owner: root group: www-data mode: "0o750" - name: Install nextcloud application ansible.builtin.unarchive: remote_src: true src: "{{ nextcloud_url }}" dest: "{{ nextcloud_local_path }}" owner: root group: www-data mode: "a-rwx,u+rwX,g+rX" extra_opts: ['--strip-components=1'] exclude: - "data" - "config/config.php" - name: Put config file ansible.builtin.template: src: "config.php.j2" dest: "{{ nextcloud_local_path }}/config/config.php" owner: www-data group: www-data mode: "0o640" - name: Set config dir permissions ansible.builtin.file: state: directory dest: "{{ nextcloud_local_path }}/config" owner: www-data group: www-data mode: "0o750" - name: Check writable dirs ansible.builtin.file: state: directory dest: "{{ nextcloud_local_path }}/{{ item }}" owner: root group: www-data mode: "g+w" recurse: true loop: - "apps" - "data" - name: Run occ upgrade become: true become_user: www-data ansible.builtin.command: cmd: "php occ upgrade" chdir: "{{ nextcloud_local_path }}" changed_when: false