You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

85 lines
3.2 KiB

  1. ---
  2. - name: Create the vmail group
  3. group: name=vmail gid=5000
  4. - name: Create the vmail user
  5. user: name=vmail uid=5000 group=vmail home=/var/vmail
  6. - name: Create mailbox directory
  7. file: path=/var/vmail state=directory owner=vmail group=vmail
  8. - name: Copying SQL authentication configuration (auth-sql.conf.ext)
  9. copy: src=10-auth.conf dest=/etc/dovecot/conf.d/10-auth.conf
  10. notify: restart dovecot
  11. - name: Copying SQL authentication configuration (auth-sql.conf.ext)
  12. copy: src=auth-sql.conf.ext dest=/etc/dovecot/conf.d/auth-sql.conf.ext
  13. notify: restart dovecot
  14. - name: Copying mailbox and namespace configuration (10-mail.conf)
  15. copy: src=10-mail.conf dest=/etc/dovecot/conf.d/10-mail.conf
  16. notify: restart dovecot
  17. - name: Copying service configuration (10-master.conf)
  18. copy: src=10-master.conf dest=/etc/dovecot/conf.d/10-master.conf
  19. notify: restart dovecot
  20. - name: Copying SSL configuration (10-ssl.conf)
  21. template: src=10-ssl.conf dest=/etc/dovecot/conf.d/10-ssl.conf
  22. notify: restart dovecot
  23. - name: Set autoexpunge for Trash and Junk folders (15-mailboxes.conf)
  24. copy: src=15-mailboxes.conf dest=/etc/dovecot/conf.d/15-mailboxes.conf
  25. notify: restart dovecot
  26. - name: Copying LMTP configuration (20-lmtp.conf - enable sieve plugin)
  27. copy: src=20-lmtp.conf dest=/etc/dovecot/conf.d/20-lmtp.conf
  28. notify: restart dovecot
  29. - name: Copying SQL access configuration (dovecot-sql.conf.ext)
  30. template: src=dovecot-sql.conf.ext.j2 dest=/etc/dovecot/dovecot-sql.conf.ext
  31. notify: restart dovecot
  32. - name: Fixing ownership and mode of dovecot.conf
  33. file: path=/etc/dovecot/dovecot.conf group=vmail mode=0644
  34. notify: restart dovecot
  35. - name: Fixing ownership and mode of dovecot-sql.conf.ext
  36. file: path=/etc/dovecot/dovecot-sql.conf.ext owner=root group=root mode=0640
  37. notify: restart dovecot
  38. - name: Copying Sieve plugin configuration (90-sieve.conf)
  39. copy: src=90-sieve.conf dest=/etc/dovecot/conf.d/90-sieve.conf
  40. notify: restart dovecot
  41. - name: Create directory for global sieve-after scripts
  42. file: path=/etc/dovecot/sieve-after state=directory
  43. - name: Create global sieve-after script to send spam to its mail folder
  44. copy: src=spam-to-folder.sieve dest=/etc/dovecot/sieve-after/spam-to-folder.sieve
  45. notify: recompile sieve scripts
  46. - name: Create sieve directory
  47. file:
  48. path: /etc/dovecot/sieve
  49. state: directory
  50. - name: Copying Quota plugin configuration (90-quota.conf)
  51. copy: src=90-quota.conf dest=/etc/dovecot/conf.d/90-quota.conf
  52. notify: restart dovecot
  53. - name: Copying quota warning shell script to /usr/local/bin
  54. template:
  55. src: quota-warning.sh.j2
  56. dest: /usr/local/bin/quota-warning.sh
  57. mode: 0750
  58. notify: restart dovecot
  59. - name: Copy learn sieve scripts
  60. copy:
  61. src: "{{item}}"
  62. dest: "/etc/dovecot/sieve/{{item}}"
  63. with_items:
  64. - learn-ham.sieve
  65. - learn-spam.sieve
  66. - name: Copy ham/spam learning scripts
  67. copy:
  68. src: "rspamd-learn-{{item}}.sh"
  69. dest: "/etc/dovecot/sieve/rspamd-learn-{{item}}.sh"
  70. mode: 0700
  71. with_items:
  72. - ham
  73. - spam
  74. - name: recompile sieve scripts
  75. command:
  76. cmd: "sievec /etc/dovecot/{{item}}.sieve"
  77. creates: "/etc/dovecot/{{item}}.svbin"
  78. with_items:
  79. - sieve-after/spam-to-folder
  80. - sieve/learn-ham
  81. - sieve/learn-spam