--- - block: - name: Install the nextcloud php prerequisites apt: name={{ nextcloud_php_required_packages }} state=present cache_valid_time=1800 tags: [ 'nextcloud', 'php', 'php-fpm' ] - block: - name: Create the nextcloud webroot file: dest={{ nextcloud_web_basedir }} owner=root group=root state=directory - name: Create the nextcloud log directory file: dest: '{{ nextcloud_log_directory }}' state: directory owner: '{{ item.user }}' group: '{{ item.user }}' loop: '{{ phpfpm_pools }}' - name: Install the logrotate configuration for nextcloud template: src: nextcloud-logrotate.conf.j2 dest: /etc/logrotate.d/nextcloud owner: root group: root mode: 0444 - name: Create the nextcloud data directory file: dest: '{{ nextcloud_data_dir }}' state: directory owner: '{{ item.user }}' group: '{{ item.user }}' loop: '{{ phpfpm_pools }}' when: phpfpm_create_users - name: Create the nextcloud data directory when the user has been created externally become: True become_user: '{{ item.user }}' file: dest: '{{ nextcloud_data_dir }}' state: directory owner: '{{ item.user }}' group: '{{ item.user }}' loop: '{{ phpfpm_pools }}' when: not phpfpm_create_users - name: Set the nextcloud archive filename when we want the latest stable set_fact: nextcloud_dist_filename: '{{ nextcloud_dist_filename_prefix.latest }}.{{ nextcloud_archive_format }}' when: nextcloud_get_latest_stable - name: Set the nextcloud archive filename when we do NOT want the latest stable set_fact: nextcloud_dist_filename: '{{ nextcloud_dist_filename_prefix[nextcloud_release_channel] }}.{{ nextcloud_archive_format }}' when: not nextcloud_get_latest_stable - name: Get nextcloud get_url: url={{ nextcloud_download_url }} dest=/srv/{{ nextcloud_dist_filename }} - name: Unpack the nextcloud archive unarchive: remote_src=yes src=/srv/{{ nextcloud_dist_filename }} dest={{ nextcloud_web_basedir }} owner={{ item.user }} group={{ item.user }} args: creates: '{{ item.doc_root }}/index.php' loop: '{{ phpfpm_pools }}' tags: [ 'nextcloud' ]