- name: Include vault
  include_vars: vault.yml

- name: Create install directory
  file:
    path: /opt/mastodon
    state: directory
    owner: "{{ docker_user.name }}"
    mode: "{{ docker_compose_directory_mask }}"

- name: Install compose file
  template:
    src: files/docker-compose.yml
    dest: /opt/mastodon/docker-compose.yml
    mode: "{{ docker_compose_file_mask }}"
    owner: "{{ docker_user.name }}"
    validate: docker-compose -f %s config
  notify: restart mastodon

- name: Install media cleanup script
  template:
    src: files/purge-media.sh
    dest: /opt/mastodon/purge-media.sh
    mode: "0755"
    owner: "{{ docker_user.name }}"

- name: Schedule media cleanup
  cron:
    name: clean up mastodon media
    hour: 2
    minute: 0
    weekday: 1
    job: /opt/mastodon/purge-media.sh
    user: "{{ me.user }}"