buluma.roundcubemail
Ansible role roundcubemail
Install and configure roundcubemail on your system.
| GitHub | Version | Issues | Pull Requests | Downloads | 
|---|---|---|---|---|
Example Playbook
This example is taken from molecule/default/converge.yml and is tested on each push, pull request and release.
---
- name: Converge
  hosts: all
  become: true
  gather_facts: true
  vars_files:
    ../../vars/main.yml
  pre_tasks:
    - name: Update apt cache.
      apt: update_cache=yes cache_valid_time=600
      when: ansible_os_family == 'Debian'
      changed_when: false
  roles:
    - role: buluma.httpd
      httpd_vhosts:
        - name: docroot
          servername: roundcubemail.example.com
          documentroot: "{{ roundcubemail_install_directory }}"
    - role: buluma.roundcubemail
The machine needs to be prepared. In CI this is done using molecule/default/prepare.yml:
---
- name: Prepare
  hosts: all
  become: true
  gather_facts: false
  roles:
    - role: buluma.bootstrap
    - role: buluma.epel
    - role: buluma.buildtools
    - role: buluma.python_pip
    - role: buluma.openssl
      openssl_items:
        - name: apache-httpd
          common_name: "{{ ansible_fqdn }}"
    - role: buluma.selinux
    - role: buluma.httpd
    - role: buluma.php
      php_upload_max_filesize: 5M
      php_post_max_size: 6M
      php_date_timezone: Europe/Amsterdam
      php_extension:
        - mcrypt.so
    - role: buluma.mysql
      mysql_databases:
        - name: roundcube
      mysql_users:
        - name: roundcube
          password: roundcube
          priv: "roundcube.*:ALL"
Also see a full explanation and example on how to use these roles.
Role Variables
The default values for the variables are set in defaults/main.yml:
---
# defaults file for roundcubemail
roundcubemail_database_host: localhost
roundcubemail_database_user: roundcube
roundcubemail_database_password: roundcube
roundcubemail_database_name: roundcube
# A URL to get support.
roundcubemail_support_url: "{{ ansible_fqdn }}/support"
# A key to encrypt sensitive data.
roundcubemail_des_key: 964af56991531a805bd55085
# The spellchecker to use. Either: 'google', 'pspell', 'enchant' or 'atd'.
roundcubemail_spellcheck_engine: pspell
# The mail host chosen to perform the log-in.
roundcubemail_default_host: localhost
roundcubemail_default_port: 143
# SMTP server host (for sending mails).
roundcubemail_smtp_server: localhost
roundcubemail_smtp_port: 25
roundcubemail_smtp_user: ""
roundcubemail_smtp_pass: ""
Requirements
- pip packages listed in requirements.txt.
State of used roles
The following roles are used to prepare a system. You can prepare your system in another way.
| Requirement | GitHub | Version | 
|---|---|---|
| buluma.bootstrap | ||
| buluma.buildtools | ||
| buluma.epel | ||
| buluma.httpd | ||
| buluma.mysql | ||
| buluma.ca_certificates | ||
| buluma.openssl | ||
| buluma.php | ||
| buluma.python_pip | ||
| buluma.reboot | ||
| buluma.selinux | 
Dependencies
Most roles require some kind of preparation, this is done in molecule/default/prepare.yml. This role has a "hard" dependency on the following roles:
- {'role': 'buluma.httpd'}
Context
This role is a part of many compatible roles. Have a look at the documentation of these roles for further information.
Here is an overview of related roles:

Compatibility
This role has been tested on these container images:
| container | tags | 
|---|---|
| Debian | all | 
| Fedora | all | 
| Ubuntu | jammy | 
| Kali | all | 
The minimum version of Ansible required is 2.12, tests have been done to:
- The previous version.
- The current version.
- The development version.
If you find issues, please register them in GitHub
Changelog
License
Author Information
ansible-galaxy install buluma.roundcubemail