==================================================== Additional puppet notes after books and presentation ==================================================== At some point, I'm going to have to consolidate all the notes into one document; but, just to keep the new shit segregted from the old shit... Taking the free puppet courses available at https://puppetlabs.com/learn/library Classes: ======== Just ran through the exercise. Interestingly, didn't have to create a site.pp file. Just include the module at the end of the module definition: :: class motd { file { '/etc/motd': ensure => file, owner => 'root', group => 'root', content => 'Hellow, world! Puppet is AWESOME!!', } } include motd Then run ``puppet apply motd.pp`` and it works... Autoloading: ============ ${module}->lib directory contains custom facts and custom resource types? $confdir = * /etc/puppet (open source) * /etc/puppetlabs (puppet enterprise) ``puppet config print modulepath`` to display the modulepath. autoloading = puppet run, -> catalog compile -> find/compile the modules. Relationship: ============= before: Causes a resource to be applied before the target resource require: Causes a resource to be applied after the target resource notify: Causes the notified resource to refresh if the notifying resource changes subscribe: subscribing resource will refresh if the target resource changes. chto gets applied first:: class chto { before => some_other } chto gets applied after:: chass chto { require => some_other } Hiera: ====== Hiera is for providing config data in the form of variables ENCs are for providing node configuration. Facter IDs system information such as OS, IP, etc. Sends facts to puppet