summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2011-06-15(#3) Add an anchor type to provide containmentJeff McCune
With Puppet 2.6.x we do not have a way to specify containment relationships. In the use case of class ntp { } declaring ntp::{package,config,service} classes, the ntp class itself should allow the user to specify before and require relationships to the main ntp class. The anchor resource type allows module authors to close the loop on classes composing the main top level module. For example: class ntp { class { 'ntp::package': } -> class { 'ntp::config': } -> class { 'ntp::service': } # These two resources "anchor" the composed classes # such that the end user may use "require" and "before" # relationships with Class['ntp'] anchor { 'ntp::begin': } -> class { 'ntp::package': } class { 'ntp::service': } -> anchor { 'ntp::end': } } Using this pattern, the module user may then simply declare relationships to the ntp class as they expect: class { 'ntp': } -> class { 'mcollective': } # OR class { 'mcollective': } -> class { 'ntp': }
2011-06-03Add validate_bool() function to stdlibJeff McCune
This function aborts catalog compilation if any of the passed values are not true or false. Note, this catches the string values of true and false correct and will abort catalog compilation if they are not boolean values. Paired-with: Dan Bode <dan@puppetlabs.com>
2011-05-25(#7657) Add basic validate_re functionJeff McCune
While developing Puppet Modules with class parameters, data from the user should be validated as per the Style Guide. Puppet should fail early and hard in the situation of invalid data being passed into the module. This function provides a more concise method to the alternative of using if statements in the Puppet manifests.