Skip to content

consensus-enterprises/ansible-role-aegir

 
 

Repository files navigation

Ansible Role: Aegir

pipeline status

Installs the Aegir hosting system, a control panel for deploying and managing large networks of Drupal sites.

Requirements

Ubuntu Focal (20.04) is the currently supported OS version. Debian (or any OS that supports apt) should work, too, but YMMV.

A MySQL server is required. This server can be installed on the same machine, or a separate one (hence why this isn't listed as a dependency). See below for an example of how to install MySQL using the consensus.mysql role. For details on configuring this role to talk to local or remote MySQL servers, see the aegir_mysql_* role variables.

Ansible pipelining must be enabled. It's necessary because this role contains tasks that run as the aegir user, who doesn't have permission to access Ansible's temporary command files. With pipelining turned on, these files aren't used.

For further details regarding installation of Aegir, see the relevant Aegir documentation.

Role Variables

The default Debian package install should suffice in the majority of cases. However, this role allows for extensive customization of all aspects of the Aegir install process via role variables. For more details, see defaults/main.yml and vars/main.yml.

Example Playbook

---
- name: "Default Aegir install via Debian package."
  hosts: all

  roles:
    - consensus.mysql
    - consensus.aegir

  tasks: 

    # optional
    - name: Generate and print a one-time login link after Aegir installation.
      include_role:
        name: consensus.aegir
        tasks_from: login_link.yml

After the playbook runs, the Aegir front-end site will be available, as will the Drush extensions (Provision, et. al.) that do the heavy lifting.

See the various included test playbooks for examples of other ways this role can be configured:

  • deb-nginx.yml: Aegir Debian package build with Nginx.
  • git-deploy.yml: End-to-end Aegir build from git source.
  • custom-deploy.yml: End-to-end Aegir build from source, with custom git repos and versions (for Drush, Provision, etc.)

License

GNU AGPLv3

Author Information

This role was originally created in 2015 by Christopher Gervais, lead maintainer of the Aegir Hosting System.

It has also had input from Dan Friedman and other folks at Consensus Enterprises. To contact us, please use our Web contact form.

About

Ansible role to install Aegir. Both Debian packaging and source-based installs are supported.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jinja 60.0%
  • Gherkin 30.7%
  • Makefile 9.3%