From: Stephen Gran Date: Tue, 17 Jan 2012 15:55:30 +0000 (+0000) Subject: and try this X-Git-Url: https://git.adam-barratt.org.uk/?a=commitdiff_plain;h=6b3c471b442882a3cf8d3f4154d2b1540f82eb85;p=mirror%2Fdsa-puppet.git and try this Signed-off-by: Stephen Gran --- diff --git a/modules/debian-org/lib/facter/lsb-for-bsd.rb b/modules/debian-org/lib/facter/lsb-for-bsd.rb new file mode 100644 index 000000000..09fd3702d --- /dev/null +++ b/modules/debian-org/lib/facter/lsb-for-bsd.rb @@ -0,0 +1,24 @@ +{ "LSBRelease" => %r{^LSB Version:\t(.*)$}, + "LSBDistId" => %r{^Distributor ID:\t(.*)$}, + "LSBDistRelease" => %r{^Release:\t(.*)$}, + "LSBDistDescription" => %r{^Description:\t(.*)$}, + "LSBDistCodeName" => %r{^Codename:\t(.*)$} +}.each do |fact, pattern| + Facter.add(fact) do + confine :kernel => 'GNU/kFreeBSD' + setcode do + unless defined?(@@lsbdata) and defined?(@@lsbtime) and (Time.now.to_i - @@lsbtime.to_i < 5) + type = nil + @@lsbtime = Time.now + @@lsbdata = Facter::Util::Resolution.exec('lsb_release -a 2>/dev/null') + end + + if pattern.match(@@lsbdata) + $1 + else + nil + end + end + end +end +