diff options
Diffstat (limited to 'ansible/roles')
| -rw-r--r-- | ansible/roles/dovecot/handlers/main.yml | 4 | ||||
| -rw-r--r-- | ansible/roles/dovecot/tasks/main.yml | 33 | ||||
| -rw-r--r-- | ansible/roles/dovecot/templates/spam-to-folder.sieve.j2 | 8 | 
3 files changed, 45 insertions, 0 deletions
| diff --git a/ansible/roles/dovecot/handlers/main.yml b/ansible/roles/dovecot/handlers/main.yml index fa1d224..7169fa5 100644 --- a/ansible/roles/dovecot/handlers/main.yml +++ b/ansible/roles/dovecot/handlers/main.yml @@ -8,3 +8,7 @@    service:      name: dovecot      state: restarted + +- name: Recompile spam-to-folder sieve script +  command: /usr/bin/sievec /etc/dovecot/sieve-after/spam-to-folder.sieve +  changed_when: true diff --git a/ansible/roles/dovecot/tasks/main.yml b/ansible/roles/dovecot/tasks/main.yml index 759a38d..5f57991 100644 --- a/ansible/roles/dovecot/tasks/main.yml +++ b/ansible/roles/dovecot/tasks/main.yml @@ -51,6 +51,39 @@    notify:      - Reload Dovecot +- name: Create sieve-after directory +  file: +    state: directory +    path: /etc/dovecot/sieve-after +    owner: vmail +    group: vmail +    mode: "0755" +  tags: +    - role::dovecot + +- name: Template spam-to-folder sieve script +  template: +    src: spam-to-folder.sieve.j2 +    dest: /etc/dovecot/sieve-after/spam-to-folder.sieve +    owner: vmail +    group: vmail +    mode: 0444 +  notify: +    - Recompile spam-to-folder sieve script +  tags: +    - role::dovecot + +- name: Set up sieve configuration for dovecot +  lineinfile: +    path: /etc/dovecot/conf.d/90-sieve.conf +    regexp: "sieve_after =" +    line: "  sieve_after = /etc/dovecot/sieve-after  # (ansible managed)" +    state: present +  notify: +    - Reload Dovecot +  tags: +    - role::dovecot +  - name: Template Dovecot LDAP config    template:      src: dovecot-ldap.conf.ext.j2 diff --git a/ansible/roles/dovecot/templates/spam-to-folder.sieve.j2 b/ansible/roles/dovecot/templates/spam-to-folder.sieve.j2 new file mode 100644 index 0000000..9033787 --- /dev/null +++ b/ansible/roles/dovecot/templates/spam-to-folder.sieve.j2 @@ -0,0 +1,8 @@ +# Ansible managed + +require ["fileinto"]; + +if header :contains "X-Spam" "Yes" { +  fileinto "Junk"; +  stop; +} | 
