# This should go in computed_network.yml, but here for now - name: Compute Nextcloud listen ip addr for nextcloud.conf set_fact: nextcloud_required_ip: "{{ ansible_default_ipv4.network }}/{{ ansible_default_ipv4.netmask }}" when: ansible_default_ipv4.network is defined - name: Install Apache's nextcloud.conf from template, for http://box/nextcloud template: src: nextcloud.conf.j2 dest: "/etc/{{ apache_config_dir }}/nextcloud.conf" owner: root group: root mode: 0644 when: nextcloud_enabled - name: Create symlink from sites-available to sites-enabled for http://box/nextcloud (debuntu) file: src: /etc/apache2/sites-available/nextcloud.conf path: /etc/apache2/sites-enabled/nextcloud.conf state: link when: nextcloud_enabled and is_debuntu - name: Remove nextcloud.conf if not nextcloud_enabled (redhat) file: path: "/etc/{{ apache_config_dir }}/nextcloud.conf" state: absent when: not nextcloud_enabled and is_redhat - name: Restart Apache, enabling http://box/nextcloud service: name: "{{ apache_service }}" state: restarted # the install wizard does not succeed if already installed - name: Determine if Nextcloud is installed shell: > #sudo -u {{ apache_user }} php '{{ nextcloud_prefix }}/nextcloud/occ' status | gawk '/installed:/ { print $3 }' become: yes become_user: "{{ apache_user }}" register: returned - name: Run Nextcloud initial install wizard shell: > cd {{ nextcloud_prefix }}/nextcloud; sudo -u {{ apache_user }} php occ maintenance:install --database "mysql" --database-name "{{ nextcloud_dbname }}" --database-user "{{ nextcloud_dbuser }}" --database-pass "{{ nextcloud_dbpassword }}" --admin-user "{{ nextcloud_admin_user }}" --admin-pass "{{ nextcloud_admin_password }}" when: nextcloud_enabled and returned.stdout == "false" - name: Allow access from all hosts and ips command: php '{{ nextcloud_prefix }}/nextcloud/occ' config:system:set trusted_domains 1 --value=* become: yes become_user: "{{ apache_user }}" when: nextcloud_enabled and returned.stdout == "false" - name: Determine if Nextcloud user exists already shell: > #sudo -u {{ apache_user }} php '{{ nextcloud_prefix }}/nextcloud/occ' user:list | grep {{ nextcloud_user }} | wc | cut -d' ' -f1 become: yes become_user: "{{ apache_user }}" register: returned_count # nextcloud wants to make users rather than just mysql users and not done - name: Create the default user shell: > #su -s /bin/sh {{ apache_user }} -c OC_PASS={{ nextcloud_user_password }}; php {{ nextcloud_prefix }}/nextcloud/occ user:add --password-from-env --display-name={{ nextcloud_user }} --group="users" {{ nextcloud_user }} become: yes become_user: "{{ apache_user }}" when: nextcloud_enabled and returned_count == "0" - name: Remove overwrite.cli.url line (Rewrite URL) from /opt/nextcloud/config/config.php lineinfile: regexp: "overwrite.cli.url" state: absent path: "{{ nextcloud_prefix }}/nextcloud/config/config.php"