Skip to content

ugns/standard-modules

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Standard Puppet modules

The r10k configuration

The /etc/r10k.yaml is setup with the following:

:cachedir: '/var/cache/r10k'
:sources:
  :ugns:
    remote: 'git@github.com:UGNS/standard-modules'
    basedir: '/etc/puppet/environments'

This allows all branches of the repository to represent dynamic environments under the /etc/puppet/environments directory.

Deployment is performed by simply running r10k deploy environment -p which is performed automatically by Jenkins CI through deploy hooks.

The puppet master configuration

The /etc/puppet/puppet.conf config file [master] section is then updated with the following:

[master]
environmentpath = $confdir/environments
autosign = $environmentpath/$environment/scripts/autosigner.rb

The environmentpath sets up the directory environments in the Puppet master which will be deployed via r10k.

The autosign script can handle automatically validating AWS EC2 instances and could be modified easily enough for additional validation.

The modules

Below are all modules deployed within the environment.

The Puppetfile is capable of being used with librarian or r10k to deploy. All dependencies are included that librarian would resolve, but r10k does not.

GitHub modules

Puppet Forge modules