Skip to content

metacpan/metacpan-puppet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2825f58 · Jan 2, 2025
Oct 2, 2024
Sep 30, 2024
Oct 1, 2024
Aug 29, 2014
Apr 19, 2018
Aug 28, 2014
Nov 9, 2024
Dec 6, 2019
Jan 2, 2025
Aug 29, 2014
Jul 27, 2014
Apr 19, 2018
Jan 25, 2014
Jun 28, 2016
Aug 28, 2014
Dec 29, 2012
Aug 29, 2014
Nov 14, 2014
Jun 28, 2016
Nov 14, 2014
Dec 7, 2019

Repository files navigation

metacpan puppet configuration

This repo is for building and running the metacpan.org development, test and live servers

Options

  1. Virtual machine - strongly recommend for development and testing.

  2. Manual instructions - for new live servers

Repository setup

There is puppet documentation which shows a very rough outline of how things are setup

Adding new users

  1. Add the new user to modules/metacpan/manifests/user.pp

  2. Add the user's pub key to the appropriate folder in modules/metacpan/files/default/home

  3. After puppet has been run, the new user can SSH in to the production machine using hostname bm-n2.metacpan.org and port 2202

How hiera works:

21:20 < ranguard> https://github.com/metacpan/metacpan-puppet/blob/leo/puppet3/modules/facts/lib/facter/env.rb -
                  to set an 'env' value
21:21 < ranguard> https://github.com/metacpan/metacpan-puppet/blob/leo/puppet3/hiera.yaml sets the order config
                  files should be examined ( top overlaying data in the ones below )
21:21 < ranguard> so common.yaml is the ground work, but there are customisations in:
                  https://github.com/metacpan/metacpan-puppet/blob/leo/puppet3/hieradata/env/productions.yaml
21:22 < ranguard> ^^ that is for all production servers
21:22 < ranguard> https://github.com/metacpan/metacpan-puppet/blob/leo/puppet3/hieradata/nodes/bm-mc-02.yaml would
                  be specifically for bm-mc-02 node
21:23 < ranguard> the config files are EVERYTHING, there should be no specific logic in modules, they become dumb
21:25 < ranguard> https://github.com/metacpan/metacpan-puppet/tree/leo/puppet3/manifests/site.pp is called, which
                  loads nodes/*.pp...
21:25 < ranguard> https://github.com/metacpan/metacpan-puppet/blob/leo/puppet3/manifests/nodes/bm.pp - says if the
                  hostname matches 'bm' then run a specific role and the rest comes from hiera