ansible/roles/mailman3/tasks/main.yml

77 lines
1.7 KiB
YAML

---
- name: Install mailman3
apt:
update_cache: true
name:
- mailman3-full
- python3-ipython # Prettier shell
- python3-pip # CAS
- python3-lxml # CAS
- sassc
install_recommends: false
register: apt_result
retries: 3
until: apt_result is succeeded
- name: Install django-allauth-cas from PIP
pip:
name: django-allauth-cas
# You will need to setup postgres
# sudo -u postgres createuser -P mailman3
# sudo -u postgres createdb -O mailman3 mailman3
- name: Configure mailman3
template:
src: "mailman3/{{ item }}.j2"
dest: "/etc/mailman3/{{ item }}"
mode: 0640
owner: root
group: list
loop:
- mailman.cfg
- mailman-hyperkitty.cfg
notify: Restart mailman3
- name: Apply permissions to the mailman directory
file:
path: /var/lib/mailman3
state: directory
owner: list
group: list
# You will need to setup postgres
# sudo -u postgres createuser -P mailman3web
# sudo -u postgres createdb -O mailman3web mailman3web
- name: Configure mailman3-web
template:
src: mailman3/mailman-web.py.j2
dest: /etc/mailman3/mailman-web.py
mode: 0640
owner: root
group: www-data
notify: Restart mailman3-web
- name: Add symlink for mailman3-web
file:
src: /usr/share/mailman3-web/manage.py
dest: /usr/local/bin/mailman-web
state: link
- name: Migrate Django database
django_manage:
command: migrate
project_path: /usr/share/mailman3-web
notify: Restart mailman3-web
- name: Compress static files
django_manage:
command: compress
project_path: /usr/share/mailman3-web
notify: Restart mailman3-web
- name: Indicate role in motd
template:
src: update-motd.d/05-service.j2
dest: /etc/update-motd.d/05-mailman3
mode: 0755