Sha256: 309ebb2c2ef30ed793e8297d8d2dd0a366939f414c5fc995e1872aa7e85bb33d

Contents?: true

Size: 1.46 KB

Versions: 4

Compression:

Stored size: 1.46 KB

Contents

## lsb.rb
## Facts related to Linux Standard Base (LSB)
##
## This program is free software; you can redistribute it and/or
## modify it under the terms of the GNU General Public License
## as published by the Free Software Foundation (version 2 of the License)
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
## GNU General Public License for more details.
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston MA  02110-1301 USA
##

{  "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 => :linux
        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

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
facter-1.5.8 lib/facter/lsb.rb
facter-1.5.7 lib/facter/lsb.rb
facter-1.5.5 lib/facter/lsb.rb
facter-1.5.6 lib/facter/lsb.rb