Newer
Older
# Basic configuration: /etc/ldap/ldap.conf, /etc/default/slapd, et al.
# Install the OpenLDAP Debian packages.
#
# $distribution: A valid Debian distribution. This can
# be the usual ones, such as "jessie", "stretch", "buster", "sid".
# It can also be one of the stanford special ones, e.g.,
# "stretch-acs-dev", "stretch-acs-prod", etc.
#
# #########
# Example 1
#
# class {'su_ldap::openldap_install':
# distribution => 'stretch'
# }
#
# This will install the stock OpenLDAP packages from the stretch distribution.
#
#
# #########
# Example 2:
#
# class {'su_ldap::openldap_install':
# distribution => 'stretch-acs-dev'
# }
#
# This will install the OpenLDAP packages from the special stretch-acs-dev
# distribution that resides in the "stanford" repository.
# Only need to do something if $distribution is defined.
if ($distribution) {
# Pin some OpenLDAP packages.
file { '/etc/apt/preferences.d/ldap':
content => template('su_ldap/etc/apt/preferences.d/ldap.erb'),
notify => Exec['ldap aptitude update'];
}
# What about special sasl? LATER.
# Update aptitude.
exec { 'ldap aptitude update':
command => 'aptitude update',
refreshonly => true,
}
# Install slapd.
package { 'slapd':
ensure => installed,
require => [
File['/etc/default/slapd'],
File['/etc/apt/sources.list.d/ldap.list'],
File['/etc/apt/preferences.d/ldap'],
File['/etc/apt/preferences.d/cyrus-sasl']
}