diff options
author | Luke Kanies <luke@madstop.com> | 2008-05-16 14:57:26 -0500 |
---|---|---|
committer | Luke Kanies <luke@madstop.com> | 2008-05-16 14:57:26 -0500 |
commit | edbfc44b2c032e489d082664bf011e543b0cba87 (patch) | |
tree | a9db970a79c1bde5e96b53b7eb268a1af8ca0ce4 | |
parent | bb41db0bf4221e394411d2a82b6de264b557fb95 (diff) | |
download | facter-edbfc44b2c032e489d082664bf011e543b0cba87.tar.gz facter-edbfc44b2c032e489d082664bf011e543b0cba87.tar.xz facter-edbfc44b2c032e489d082664bf011e543b0cba87.zip |
Adding a --puppet option to facter to load Puppet facts.
Also updating the changelog for previous work.
-rw-r--r-- | CHANGELOG | 11 | ||||
-rw-r--r-- | README | 2 | ||||
-rwxr-xr-x | bin/facter | 14 |
3 files changed, 24 insertions, 3 deletions
@@ -1,4 +1,15 @@ ?: + The 'facter' executable now has an option (-p|--puppet) for loading the + Puppet libraries, which gives it access to Puppet's facts. + + Added autoloading to Facter with a default of not loading all facts, + which results in a significant speedup when only one fact is sought. + Facts are autoloaded in either a single file named after the fact or + in any file in a directory named after the fact. + + Significantly refactored Facter's internals, including creating tests + for all internal classes. + A netmask fact has been added closing ticket #46. It only returns the netmask of the primary interface (in the same behaviour as the ipaddress and macaddress facts). @@ -6,5 +6,5 @@ processors, etc. It currently cannot collect very much information, but it is architected to be both OS and OS version specific. -See bin/facter or http://reductivelabs.com/project/enhost for an example of the +See bin/facter or http://reductivelabs.com/trac/enhost for an example of the interface. @@ -6,7 +6,7 @@ # # = Usage # -# facter [-d|--debug] [-h|--help] [-v|--version] [-y|--yaml] [fact] [fact] [...] +# facter [-d|--debug] [-h|--help] [-p|--puppet] [-v|--version] [-y|--yaml] [fact] [fact] [...] # # = Description # @@ -24,6 +24,9 @@ # help:: # Print this help message # +# puppet:: +# Load the Puppet libraries, thus allowing Facter to load Puppet-specific facts. +# # version:: # Print the version and exit. # @@ -64,7 +67,8 @@ result = GetoptLong.new( [ "--help", "-h", GetoptLong::NO_ARGUMENT ], [ "--debug", "-d", GetoptLong::NO_ARGUMENT ], [ "--yaml", "-y", GetoptLong::NO_ARGUMENT ], - [ "--config", "-c", GetoptLong::REQUIRED_ARGUMENT ] + [ "--config", "-c", GetoptLong::REQUIRED_ARGUMENT ], + [ "--puppet", "-p", GetoptLong::NO_ARGUMENT ] ) options = { @@ -76,6 +80,12 @@ result.each { |opt,arg| when "--version" puts "%s" % Facter.version exit + when "--puppet" + begin + require 'puppet' + rescue LoadError => detail + $stderr.puts "Could not load Puppet: %s" % detail + end when "--yaml" options[:yaml] = true when "--debug" |