---
- name: Install MoinMoin
  apt:
    update_cache: true
    name:
      - python-moinmoin
      - python-markdown  # markdown parser
      - uwsgi
      - uwsgi-plugin-python
  register: apt_result
  retries: 3
  until: apt_result is succeeded

- name: Configure MoinMoin
  template:
    src: moin/mywiki.py.j2
    dest: /etc/moin/mywiki.py

- name: Configure MoinMoin cron
  template:
    src: cron.d/moinmoin.j2
    dest: /etc/cron.d/moinmoin

- name: Configure uwsgi
  template:
    src: uwsgi/apps-available/moinmoin.ini.j2
    dest: /etc/uwsgi/apps-available/moinmoin.ini
  notify: Restart uwsgi

- name: Activate uwsgi site
  file:
    src: /etc/uwsgi/apps-available/moinmoin.ini
    dest: /etc/uwsgi/apps-enabled/moinmoin.ini
    state: link
  notify: Restart uwsgi

- name: Activate uwsgi service
  systemd:
    name: uwsgi
    enabled: true
    state: started

- name: Configure nginx
  template:
    src: nginx/sites-available/wiki.j2
    dest: /etc/nginx/sites-available/wiki
  notify: Restart nginx

- name: Activate uwsgi site
  file:
    src: /etc/nginx/sites-available/wiki
    dest: /etc/nginx/sites-enabled/wiki
    state: link
  notify: Restart nginx

- name: Indicate role in motd
  template:
    src: update-motd.d/05-service.j2
    dest: /etc/update-motd.d/05-moinmoin
    mode: 0755