puppet-aegir/README.md

3.0 KiB

aegir

Module Description

This module is intended to install aegir simply.

License

Copyright (C) 2017 Kienan Stewart

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

Requirements

Modules from forge.puppet.com:

  • puppetlabs-stdlib (tested with 4.25.1)
  • puppetlabs-apt (tested with 2.4.0)

Operating systems: Debian derivatives.

Puppet: 4.x

Setup

Nothing special.

Limitations

  • Depends on the the aegir${version} package to correctly install dependencies

Example Usage

Install a hostmaster

# Using puppetlabs/mysql (5.4.0) as example
class { '::mysql::server':
  package_name => 'default-mysql-server',
  service_name => 'mysqld',
  users        => {
    'aegirroot@localhost' => {
      'password_hash' => mysql_password('examplepassword'),
    },
  },
  grants       => {
    'aegirroot@localhost/*.*' => {
      'user'       => 'aegirroot@localhost',
      'table'      => '*.*',
      'privileges' => ['ALL'],
      'options'    => ['GRANT'],
    },
  },
}

# Assumes mysql or mariadb is installed
# and that there is a user aegir_root
# with all grants etc permissions on *.*
class { 'aegir::hostmaster':
  database => {
    host     => 'localhost',
    user     => 'aegirroot',
    password => 'examplepassword'
  }
}

Class['::mysql::server']
->Class['::aegir::hostmaster']

Reference

Classes

Public Classes

  • aegir::hostmaster
  • aegir::source

Class: aegir::hostmaster

Debian package based hostmaster installation.

Parameters:

  • database: A hash containing user, host, and password. Required.
  • frontend_url: The url for the hostmaster drupal installation. Optional, defaults to the fully qualified domain name.
  • version: The major aegir version to install. Optional, default: 3
  • server: Which webserver to use. Optional, default: apache. Supports: apache2, nginx
  • manage_sources: Add source for Aegir packages. Default: true
  • release: Which release to use from the package source. Optional, default: stable.
  • makefile: If a custom makefile should be used, specify it here. Optional, default: ''
  • email: The email to set for the admin user in the hostmaster installation. Optional, default: '' (aegir will pick the user@fqdn).
  • working_copy: Keep the hostmaster platform git directories? Optional, default: false.
  • drush_version: Which version of drush to install with provision. Optional, default '' (stable).

Class: aegir::source

Adds the debian apt source

Parameters:

  • release: Which release of aegir to use. Default: stable