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.
131 lines
3.2 KiB
131 lines
3.2 KiB
--- |
|
- name: configure roundcube-core |
|
debconf: |
|
name: roundcube-core |
|
question: "{{ item.key }}" |
|
value: "{{ item.value }}" |
|
vtype: "{{ item.type }}" |
|
with_items: |
|
- { key: 'roundcube/database-type', type: 'select', value: 'sqlite3' } |
|
- { key: 'roundcube/db/basepath', type: 'string', value: '/var/lib/roundcube/' } |
|
tags: |
|
- roundcube |
|
|
|
- name: install Roundcube |
|
apt: |
|
name: "{{ item }}" |
|
state: present |
|
with_items: |
|
- imapproxy |
|
- roundcube |
|
- roundcube-sqlite3 |
|
- roundcube-plugins |
|
- php-net-sieve |
|
- php-zip |
|
tags: |
|
- roundcube |
|
|
|
- name: configure imapproxy imap host |
|
lineinfile: |
|
dest: /etc/imapproxy.conf |
|
regexp: "^server_hostname" |
|
line: "server_hostname {{ roundcube_imap_host }}" |
|
notify: restart imapproxy |
|
tags: |
|
- roundcube |
|
|
|
- name: configure imapproxy imap port |
|
lineinfile: |
|
dest: /etc/imapproxy.conf |
|
regexp: "^server_port" |
|
line: "server_port {{ roundcube_imap_port }}" |
|
notify: reload imapproxy |
|
tags: |
|
- roundcube |
|
|
|
- name: enable and start imapproxy |
|
service: |
|
name: imapproxy |
|
state: started |
|
enabled: True |
|
tags: |
|
- roundcube |
|
|
|
- name: configure roundcube imap host |
|
lineinfile: |
|
dest: /etc/roundcube/config.inc.php |
|
regexp: "\\$config\\['default_host'\\]" |
|
line: "$config['default_host'] = array('127.0.0.1');" |
|
tags: |
|
- roundcube |
|
|
|
- name: configure roudcube imap port |
|
lineinfile: |
|
dest: /etc/roundcube/config.inc.php |
|
regexp: "\\$config\\['default_port'\\]" |
|
insertafter: "\\$config\\['default_host'\\]" |
|
line: "$config['default_port'] = 1143;" |
|
tags: |
|
- roundcube |
|
|
|
- name: configure managesieve plugin |
|
copy: |
|
src: /usr/share/roundcube/plugins/managesieve/config.inc.php.dist |
|
dest: /etc/roundcube/plugins/managesieve/config.inc.php |
|
mode: "0644" |
|
remote_src: True |
|
tags: |
|
- roundcube |
|
|
|
- name: enable default plugins |
|
replace: |
|
dest: /etc/roundcube/config.inc.php |
|
regexp: "^\\$config\\['plugins'\\] = array\\($" |
|
replace: "$config['plugins'] = array('zipdownload','managesieve'" |
|
tags: |
|
- roundcube |
|
|
|
- name: deploy apache roundcube vhost |
|
template: |
|
src: apache2.conf.j2 |
|
dest: /etc/apache2/sites-available/rouncube.conf |
|
mode: "0640" |
|
notify: reload apache2 |
|
when: roundcube_webserver == "apache" |
|
tags: |
|
- roundcube |
|
|
|
- name: enable apache roundcube vhost |
|
file: |
|
src: /etc/apache2/sites-available/rouncube.conf |
|
dest: /etc/apache2/sites-enabled/rouncube.conf |
|
state: link |
|
notify: reload apache2 |
|
when: roundcube_webserver == "apache" |
|
tags: |
|
- roundcube |
|
|
|
- name: deploy Nginx roundcube vhost |
|
template: |
|
src: nginx.conf.j2 |
|
dest: /etc/nginx/sites-available/rouncube.conf |
|
when: roundcube_webserver == "nginx" |
|
notify: reload nginx |
|
|
|
- name: enable Nginx roundcube vhost |
|
file: |
|
src: "/etc/nginx/sites-available/rouncube.conf" |
|
dest: "/etc/nginx/sites-enabled/rouncube.conf" |
|
state: link |
|
when: roundcube_webserver == "nginx" |
|
notify: reload nginx |
|
|
|
- name: enable roundcube link in default site index |
|
lineinfile: |
|
dest: /var/www/index.html |
|
state: present |
|
regexp: "Webmail" |
|
line: ' <li><a href="https://{{ roundcube_host }}">Webmail</a></li>' |
|
insertbefore: "</ul>" |
|
tags: |
|
- roundcube
|
|
|