Mailman environment configuration
System package configuration
- mailman__base_packages
List of the base APT packages to install for Mailman 3 support.
mailman__base_packages:
- 'mailman3-full'
- 'lynx'
- '{{ "dbconfig-pgsql"
if (mailman__database_type == "postgresql")
else [] }}'
- '{{ "dbconfig-mysql"
if (mailman__database_type == "mysql")
else [] }}'
- mailman__packages
List of additional APT packages to install with Mailman 3.
mailman__packages: []
UNIX environment
- mailman__user
The UNIX system account used by the Mailman installation.
mailman__user: 'list'
- mailman__group
The UNIX system group used by the Mailman installation.
mailman__group: 'list'
Web environment
- mailman__domain
The DNS domain used by Mailman service.
mailman__domain: '{{ ansible_domain }}'
- mailman__fqdn
The Fully Qualified Domain Name used by Mailman. If the Mailman3 web interface sends emails, this domain will be used for the sender addresses. In particular, it will be 'postorius@<fqdn>' for internal authentication and 'root@<fqdn>' for error messages.
mailman__fqdn: 'lists.{{ mailman__domain }}'
- mailman__additional_domains
Additional DNS names used by the Mailman webserver. The users will be automatically redirected to the main FQDN of the service.
mailman__additional_domains: []
Database configuration options
- mailman__database_type
The database type used by the Mailman installation, defined via Ansible local facts to avoid switching to a different database on subsequent Ansible runs. If Mailman 3 is not installed, the database will be selected in order of preference - PostgreSQL, MySQL, SQLite.
mailman__database_type: '{{ ansible_local.mailman.database_class.split(".")[2]
if (ansible_local|d() and ansible_local.mailman is defined)
else ("postgresql"
if (ansible_local.postgresql is defined)
else ("mysql"
if (ansible_local.mariadb is defined)
else "sqlite")) }}'
Django superuser account
- mailman__superuser_name
Name of the Django superuser account created by the role.
mailman__superuser_name: '{{ ansible_local.core.admin_users[0]
if (ansible_local.core.admin_users|d())
else "admin" }}'
- mailman__superuser_email
E-mail address of the Django superuser account created by the role.
mailman__superuser_email: '{{ ansible_local.core.admin_private_email[0]
if (ansible_local.core.admin_private_email|d())
else ("postmaster@" + mailman__domain) }}'