72 lines
No EOL
1.7 KiB
YAML
72 lines
No EOL
1.7 KiB
YAML
- name: add sieve actions
|
|
blockinfile:
|
|
path: /etc/dovecot/conf.d/90-sieve.conf
|
|
insertbefore: "}"
|
|
block: |
|
|
# From elsewhere to Junk folder
|
|
imapsieve_mailbox1_name = Junk
|
|
imapsieve_mailbox1_causes = COPY
|
|
imapsieve_mailbox1_before = file:/etc/dovecot/sieve/learn-spam.sieve
|
|
|
|
# From Junk folder to elsewhere
|
|
imapsieve_mailbox2_name = *
|
|
imapsieve_mailbox2_from = Junk
|
|
imapsieve_mailbox2_causes = COPY
|
|
imapsieve_mailbox2_before = file:/etc/dovecot/sieve/learn-ham.sieve
|
|
|
|
sieve_pipe_bin_dir = /etc/dovecot/sieve
|
|
sieve_global_extensions = +vnd.dovecot.pipe
|
|
sieve_plugins = sieve_imapsieve sieve_extprograms
|
|
register: dovecot_config
|
|
|
|
- name: restart dovecot
|
|
when: dovecot_config.changed
|
|
service:
|
|
name: dovecot
|
|
state: restarted
|
|
|
|
- name: create directory for sieve files
|
|
file:
|
|
path: /etc/dovecot/sieve
|
|
state: directory
|
|
|
|
- name: copy global sieve files
|
|
copy:
|
|
src: "{{ item }}"
|
|
dest: "/etc/dovecot/sieve/{{ item }}"
|
|
owner: vmail
|
|
group: vmail
|
|
mode: 0500
|
|
with_items:
|
|
- learn-spam.sieve
|
|
- learn-ham.sieve
|
|
register: sieve_scripts
|
|
|
|
- name: run sieve compiler
|
|
when: sieve_scripts.changed
|
|
command: |
|
|
sievec /etc/dovecot/sieve/{{ item }}
|
|
with_items:
|
|
- learn-spam.sieve
|
|
- learn-ham.sieve
|
|
|
|
- name: chown sieve files
|
|
file:
|
|
path: "/etc/dovecot/sieve/{{ item }}"
|
|
owner: vmail
|
|
group: vmail
|
|
mode: 0500
|
|
with_items:
|
|
- learn-spam.svbin
|
|
- learn-ham.svbin
|
|
|
|
- name: copy shellscripts
|
|
copy:
|
|
src: "{{ item }}"
|
|
dest: "/etc/dovecot/sieve/{{ item }}"
|
|
owner: vmail
|
|
group: vmail
|
|
mode: 0700
|
|
with_items:
|
|
- rspamd-learn-spam.sh
|
|
- rspamd-learn-ham.sh |