- Overview
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with the module
- Usage - Configuration options and additional functionality
- Reference - An under-the-hood peek at what the module is doing and how
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
- Release Notes - Other notable remarks
Puppet module that manages repositories in FHS /app. Designed for Puppet 3.x and newer in POSIX environments. Requires solict-fhs_app >= 2.0.0.
The module will implement and manage code repositories in FHS /app, reusing the configuration defined in solict-fhs_app, including applications.
Git and Mercurial (Hg) repositories are supported.
Consult solict-fhs_app for more information regarding this FHS and puppetlabs-vcsrepo for information regarding vcsrepo type.
This module has been desgined for Puppet 3.x and newer in POSIX environments. Requires solict-fhs_app >= 2.0.0.
- Repositories will be cloned/pulled to the application src directory.
- Permissions and ownership will be applied where applicable.
The following modules are requirements and should be installed.
- puppetlabs-stdlib
- puppetlabs-vcsrepo
- solict-fhs_app >= 2.0.0
When deployed, the directory of the module should be renamed to fhs_app_vcs.
The class fhs_app_vcs must be declared in a manifest or loaded with hiera_include to be initialized. All other classes are autoloaded and do not need to be manually initialized.
Parameters can be provided with both methods, for the class fhs_app_vcs.
The following parameters are used:
-
defaults
A hash that defines the default parameters. It is hard coded into params.pp and can be ignored. They are used when the other hashes are missing or incomplete. -
vcs
A hash that defines the parameters for the vcs class. These will be used to clone/pull repositories and apply permissions and ownership to files. Repositories and locations are customizable. If no vcs params are provided, no changes will be made. Multiple vcs repos can be provided.
The file HOWTO.md details sample usage with manifests and hiera.
There are 3 classes provided by this module:
- fhs_app, which initializes the module are accepts parameters
- fhs_app::params, which is autoloaded to retrieve parameters
- fhs_app::childs, which is autoloaded to manage the provided repositories
The parameterized vcsrepo and file resources are managed as configured, as defined for params vcs.
No new resources are provided.
It has been successfully tested in CentOS/RHEL and Debian. Should be compatible with most of the Linux distributions.
The source for the module can be found on it's project source page. Contributions and issues are welcomed.
This source code comes with absolutely no warranty or liability for damages.