parent
cab54879d1
commit
21da2f572b
@ -0,0 +1,21 @@
|
||||
# Adjusting email-sending settings (optional)
|
||||
|
||||
By default, this playbook sets up a [postfix](http://www.postfix.org/) email server through which all Matrix services send emails.
|
||||
|
||||
The email server would attempt to deliver emails directly to their final destination.
|
||||
This may or may not work, depending on your domain configuration (SPF settings, etc.)
|
||||
|
||||
By default, emails are sent from `matrix@<your-domain-name>` (as specified by the `matrix_mailer_sender_address` playbook variable).
|
||||
|
||||
Furthmore, if you'd like to relay email through another SMTP server, feel free to redefine a few more playbook variables.
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
matrix_mailer_sender_address: "another.sender@example.com"
|
||||
matrix_mailer_relay_use: true
|
||||
matrix_mailer_relay_host_name: "mail.example.com"
|
||||
matrix_mailer_relay_host_port: 587
|
||||
matrix_mailer_relay_auth: true
|
||||
matrix_mailer_relay_auth_username: "another.sender@example.com"
|
||||
matrix_mailer_relay_auth_password: "some-password"
|
||||
```
|
@ -0,0 +1,56 @@
|
||||
---
|
||||
|
||||
#
|
||||
# Tasks related to setting up the mailer
|
||||
#
|
||||
|
||||
- name: Ensure mailer environment variables file created
|
||||
template:
|
||||
src: "{{ role_path }}/templates/env/{{ item }}.j2"
|
||||
dest: "{{ matrix_environment_variables_data_path }}/{{ item }}"
|
||||
mode: 0640
|
||||
with_items:
|
||||
- "env-mailer"
|
||||
|
||||
- name: Ensure mailer image is pulled
|
||||
docker_image:
|
||||
name: "{{ matrix_docker_image_mailer }}"
|
||||
when: matrix_mailer_enabled
|
||||
|
||||
- name: Ensure matrix-mailer.service installed
|
||||
template:
|
||||
src: "{{ role_path }}/templates/systemd/matrix-mailer.service.j2"
|
||||
dest: "/etc/systemd/system/matrix-mailer.service"
|
||||
mode: 0644
|
||||
when: matrix_mailer_enabled
|
||||
|
||||
#
|
||||
# Tasks related to getting rid of the mailer (if it was previously enabled)
|
||||
#
|
||||
|
||||
- name: Check existence of matrix-mailer service
|
||||
stat: path="/etc/systemd/system/matrix-mailer.service"
|
||||
register: matrix_mailer_service_stat
|
||||
|
||||
- name: Ensure matrix-mailer is stopped
|
||||
service: name=matrix-mailer state=stopped daemon_reload=yes
|
||||
register: stopping_result
|
||||
when: "not matrix_mailer_enabled and matrix_mailer_service_stat.stat.exists"
|
||||
|
||||
- name: Ensure matrix-mailer.service doesn't exist
|
||||
file:
|
||||
path: "/etc/systemd/system/matrix-mailer.service"
|
||||
state: absent
|
||||
when: "not matrix_mailer_enabled and matrix_mailer_service_stat.stat.exists"
|
||||
|
||||
- name: Ensure Matrix mailer environment variables path doesn't exist
|
||||
file:
|
||||
path: "{{ matrix_environment_variables_data_path }}/env-mailer"
|
||||
state: absent
|
||||
when: "not matrix_mailer_enabled"
|
||||
|
||||
- name: Ensure mailer Docker image doesn't exist
|
||||
docker_image:
|
||||
name: "{{ matrix_docker_image_mailer }}"
|
||||
state: absent
|
||||
when: "not matrix_mailer_enabled"
|
@ -0,0 +1,8 @@
|
||||
MAILNAME=matrix-mailer
|
||||
{% if matrix_mailer_relay_use %}
|
||||
RELAYHOST={{ matrix_mailer_relay_host_name }}:{{ matrix_mailer_relay_host_port }}
|
||||
{% endif %}
|
||||
{% if matrix_mailer_relay_auth %}
|
||||
RELAYHOST_AUTH=yes
|
||||
RELAYHOST_PASSWORDMAP={{ matrix_mailer_relay_host_name }}:{{ matrix_mailer_relay_auth_username }}:{{ matrix_mailer_relay_auth_password }}
|
||||
{% endif %}
|
@ -0,0 +1,20 @@
|
||||
[Unit]
|
||||
Description=Matrix mailer
|
||||
After=docker.service
|
||||
Requires=docker.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStartPre=-/usr/bin/docker kill matrix-mailer
|
||||
ExecStartPre=-/usr/bin/docker rm matrix-mailer
|
||||
ExecStart=/usr/bin/docker run --rm --name matrix-mailer \
|
||||
--network={{ matrix_docker_network }} \
|
||||
--env-file={{ matrix_environment_variables_data_path }}/env-mailer \
|
||||
{{ matrix_docker_image_mailer }}
|
||||
ExecStop=-/usr/bin/docker kill matrix-mailer
|
||||
ExecStop=-/usr/bin/docker rm matrix-mailer
|
||||
Restart=always
|
||||
RestartSec=30
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
Loading…
Reference in new issue