--- - name: Install Roundcube apt: update_cache: true install_recommends: false name: - nginx - roundcube - roundcube-pgsql - roundcube-plugins - roundcube-plugins-extra - php-fpm - php-gd - php-pspell register: apt_result retries: 3 until: apt_result is succeeded - name: Configure Roundcube template: src: "roundcube/{{ item }}.j2" dest: "/etc/roundcube/{{ item }}" owner: root group: www-data mode: 0640 loop: - debian-db.php - config.inc.php - name: Clone custom plugins git: repo: "{{ item.repo }}" dest: "/etc/roundcube/plugins/{{ item.name }}" version: "{{ item.version }}" loop: - repo: https://gitlab.adm.crans.org/nounous/roundcube-intranet.git name: intranet version: HEAD - repo: https://gitlab.adm.crans.org/nounous/roundcube-plugin-filters.git name: filters version: filters-2.2.0 - repo: https://gitlab.adm.crans.org/nounous/roundcube-plugin-automatic_addressbook.git name: automatic_addressbook version: 0.4.3 - repo: https://gitlab.adm.crans.org/nounous/roundcube-plugin-identity_smtp.git name: identity_smtp version: HEAD - name: Symlink custom plugins (1) file: src: "/usr/share/roundcube/plugins/{{ item }}" dest: "/var/lib/roundcube/plugins/{{ item }}" state: link loop: - intranet - filters - automatic_addressbook - identity_smtp - name: Symlink custom plugins (1) file: src: "/etc/roundcube/plugins/{{ item }}" dest: "/usr/share/roundcube/plugins/{{ item }}" state: link loop: - intranet - filters - automatic_addressbook - identity_smtp - name: Copy NGINX site template: src: nginx/roundcube.j2 dest: /etc/nginx/sites-available/roundcube notify: Restart nginx - name: Activate NGINX site file: src: /etc/nginx/sites-available/roundcube dest: /etc/nginx/sites-enabled/roundcube state: link notify: Restart nginx - name: Indicate role in motd template: src: update-motd.d/05-service.j2 dest: /etc/update-motd.d/05-roundcube mode: 0755