Version information
This version is compatible with:
- Puppet Enterprise 2023.8.x, 2023.7.x, 2023.6.x, 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x
- Puppet >= 6.0.0 < 9.0.0
- FreeBSD , , , ,
Start using this module
Add this module to your Puppetfile:
mod 'markt-lam', '1.3.0'
Learn more about managing modules with a PuppetfileDocumentation
puppet-lam
Table of Contents
Overview
A puppet module to install and configure LDAP Account Manager (LAM), a webfrontend for managing entries stored in an LDAP directory.
Requirements
A working PHP installation as well as a properly configured webserver are required.
Both puppet-php as well as puppetlabs-apache are highly recommended to setup a functional environment. This task is beyond the scope of this module.
Usage
Basic usage
The minimum configuration should at least specify the desired version:
class { 'lam':
version => '7.3',
}
This will install and configure LAM. You should use the symlink target (which defaults to /opt/lam
) as the document root when setting up the webserver.
LAM needs write access to several directories, so if your webserver runs with a different user account, you should specify the following additional parameters:
class { 'lam':
group => 'wwwgroup',
user => 'wwwuser',
version => '7.3',
}
The module maintains a dedicated data directory for LAM, so configuration and runtime data is not lost when upgrading. The location of this directory can be customized:
class { 'lam':
datadir => '/path/to/lam-data',
version => '7.3',
}
Pro edition
In theory the Pro edition of LAM is supported by the $edition
parameter. You need to download it from the customer portal and place the archive on a local mirror, which should later be specified by using the $mirror
parameter.
However, due to the lack of a test license this feature is untested.
class { 'lam':
edition => 'pro',
mirror => 'http://company.example.com/path/to/archive/%s',
version => '7.3',
}
Reference
Classes and parameters are documented in REFERENCE.md.
Development
Contributing
Please use the GitHub issues functionality to report any bugs or requests for new features. Feel free to fork and submit pull requests for potential contributions.
Contributions must pass all existing tests, new features should provide additional unit/acceptance tests.
Reference
Table of Contents
Classes
Public Classes
lam
: Setup LDAP Account Manager (LAM)
Private Classes
lam::install
: Download and extract the distribution archive
Classes
lam
Setup LDAP Account Manager (LAM)
Parameters
The following parameters are available in the lam
class.
datadir
Data type: Stdlib::Compat::Absolute_path
Specifies the directory where LAM should store its configuration
and other persistent data. A symlink is created in $installroot
that points to this directory. It should exist outside of $installroot
.
edition
Data type: Enum['oss', 'pro']
The edition of LAM that should be installed.
group
Data type: String
The name of the group that is used by the webserver process.
installroot
Data type: Stdlib::Compat::Absolute_path
Specifies the base directory where LAM should be installed. A new subdirectory for each version will be created.
mirror
Data type: Variant[Stdlib::HTTPUrl,Stdlib::HTTPSUrl]
Specifies the base URL where the distribution archive can be downloaded. Useful when providing a local mirror for the Pro edition.
user
Data type: String
The name of the user that is used by the webserver process.
version
Data type: String
Specifies the version of LAM that should be installed.
manage_symlink
Data type: Boolean
path
Data type: String
symlink_name
Data type: String
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
v1.3.0 - 2023-07-25
Changed
- Update module dependencies and OS support
Fixed
- Fix GitHub Actions
- Fix compatibility with puppetlabs/stdlib v9.0.0
v1.2.0 - 2023-01-10
Fixed
- Fix default user/group on Debian/Ubuntu
v1.1.1 - 2022-09-20
Fixed
- Fix module dependencies
v1.1.0 - 2022-07-29
Changed
- Update OS version, Puppet version and dependencies
- Update PDK from 1.18.1 to 2.5.0
Fixed
- Fix unit test
v1.0.0 - 2020-11-02
Initial release
Dependencies
- puppetlabs/stdlib (>= 6.0.0 < 10.0.0)
- puppet/archive (>= 6.0.0 < 8.0.0)