- 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 }}"

- 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: docker-compose -f %s config
  register: compose_file

- name: Install nextcloud config
  template:
    src: files/nextcloud/config.php
    dest: "{{ app_data_dir }}/nextcloud/config/config.php"
    mode: "{{ docker_compose_file_mask }}"
    owner: "{{ docker_user.name }}"
  register: config_file

- name: Install occ script
  template:
    src: files/nextcloud/occ
    dest: /opt/nextcloud/occ
    mode: "0755"
    owner: "{{ docker_user.name }}"

- name: restart nextcloud
  shell:
    chdir: /opt/nextcloud
    cmd: "{{ docker_update_command }}"
  when: compose_file.changed or config_file.changed

- name: Set data dir permissions
  cron:
    name: Set nextcloud data permissions
    special_time: daily
    job: chown -R {{ docker_user.name }}:{{ docker_user.name }} /mnt/tank/files/nextcloud