Method: RSpec::Puppet::Support#server_facts_hash

Defined in:
lib/rspec-puppet/support.rb

#server_facts_hashObject



297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
# File 'lib/rspec-puppet/support.rb', line 297

def server_facts_hash
  server_facts = {}

  # Add our server version to the fact list
  server_facts['serverversion'] = Puppet.version.to_s

  # And then add the server name and IP
  { 'servername' => 'networking.fqdn', 'serverip' => 'networking.ip' }.each do |var, fact|
    if (value = Puppet.runtime[:facter].value(fact))
      server_facts[var] = value
    else
      warn "Could not retrieve fact #{fact}"
    end
  end

  if server_facts['servername'].nil?
    host = Puppet.runtime[:facter].value('networking.hostname')
    server_facts['servername'] = if (domain = Puppet.runtime[:facter].value('networking.domain'))
                                   [host, domain].join('.')
                                 else
                                   host
                                 end
  end
  server_facts
end