Take care of the following issues:
Replace scripts with native Ansible.
Use a list of virtual hosts per server in the inventory, similar to what the geerlingguy.nginx role does.
We want to have separate roles for all parts of a complete Sympa installation:
- database
- mysql/mariadb
- PostgreSQL
- sympa
- mailserver
- postfix
- smtp
- webserver
Check whether there are external roles which can replace existing internal roles. Popular external roles are usually tested more thoroughly and have more options for different use cases and server types.
It is useful to wrap external roles into an internal role, so we can adjust variables etc:
- name: Run external MySQL role
import_role:
name: geerlingguy.mysql
vars:
mysql_packages:
- mariadb-server
- mariadb-client`