diff options
-rw-r--r-- | lib/facter/domain.rb | 8 | ||||
-rw-r--r-- | lib/facter/fqdn.rb | 4 | ||||
-rw-r--r-- | lib/facter/hostname.rb | 7 |
3 files changed, 7 insertions, 12 deletions
diff --git a/lib/facter/domain.rb b/lib/facter/domain.rb index 5dfead0..b1bba4d 100644 --- a/lib/facter/domain.rb +++ b/lib/facter/domain.rb @@ -4,14 +4,14 @@ Facter.add(:domain) do # steps is important Facter.value(:hostname) - # try to fetch the domain from hostname if long hostname is used. - if defined? $fqdn and $fqdn =~ /^([\w-]+)\.(.+)$/ - next $2 - end + next $domain if defined? $domain and ! $domain.nil? domain = Facter::Util::Resolution.exec('dnsdomainname') next domain if domain =~ /.+\..+/ + domain = Facter::Util::Resolution.exec('domainname') + next domain if domain =~ /.+\..+/ + if FileTest.exists?("/etc/resolv.conf") domain = nil search = nil diff --git a/lib/facter/fqdn.rb b/lib/facter/fqdn.rb index 6271995..5ebc5f5 100644 --- a/lib/facter/fqdn.rb +++ b/lib/facter/fqdn.rb @@ -1,9 +1,5 @@ Facter.add(:fqdn) do setcode do - # try to fetch the fqdn from hostname if long hostname is used. - Facter.value(:hostname) - next $fqdn if defined? $fqdn and ! $fqdn.nil? - host = Facter.value(:hostname) domain = Facter.value(:domain) if host and domain diff --git a/lib/facter/hostname.rb b/lib/facter/hostname.rb index c3ca968..188efa4 100644 --- a/lib/facter/hostname.rb +++ b/lib/facter/hostname.rb @@ -1,13 +1,12 @@ Facter.add(:hostname, :ldapname => "cn") do setcode do - require 'socket' hostname = nil - name = Socket.gethostbyname(Socket.gethostname).first + name = Facter::Util::Resolution.exec('hostname') or nil if name if name =~ /^([\w-]+)\.(.+)$/ hostname = $1 - # the FQDN/Domain facts use this - $fqdn = name + # the Domain class uses this + $domain = $2 else hostname = name end |