--- - name: delete nocontent ansible.builtin.file: path: ~/html/nocontent.html state: absent - name: create directory for download ansible.builtin.file: path: ~/engelsystem state: directory mode: 0755 - name: download Engelsystem ansible.builtin.unarchive: src: https://github.com/engelsystem/engelsystem/releases/download/v{{ engelsystem_version }}/engelsystem-v{{ engelsystem_version }}.zip dest: ~/engelsystem remote_src: yes creates: ~/engelsystem/release register: engelsystem_archive - name: check web root ansible.builtin.stat: path: /var/www/virtual/{{ uberspace_user }}/engelsystem/storage register: storage - name: ensure correct mode for web directory when: storage.stat.isdir is not defined ansible.builtin.file: path: /var/www/virtual/{{ uberspace_user }}/engelsystem mode: 0755 state: directory - name: copy to web root when: storage.stat.isdir is not defined ansible.builtin.copy: src: ~/engelsystem/release/ dest: /var/www/virtual/{{ uberspace_user }}/engelsystem remote_src: yes directory_mode: 0755 mode: 0644 - name: ensure correct mode for web directory ansible.builtin.file: path: /var/www/virtual/{{ uberspace_user }} mode: 0750 state: directory - name: point html directory to engelsystem public directory block: - name: remove old html directory ansible.builtin.file: path: /var/www/virtual/{{ uberspace_user }}/html state: absent - name: create symlink to public directory ansible.builtin.file: path: /var/www/virtual/{{ uberspace_user }}/html src: /var/www/virtual/{{ uberspace_user }}/engelsystem/public state: link - name: ensure correct SE settings ansible.builtin.shell: cmd: /usr/sbin/restorecon -R -v /var/www/virtual/{{ uberspace_user|quote }}/html - name: download database install script ansible.builtin.get_url: url: https://github.com/engelsystem/engelsystem/releases/download/v{{ engelsystem_version }}/install-v{{ engelsystem_version }}.sql dest: ~/engelsystem/install.sql mode: 0644