From ee2354d73440e4c10c49ce7dec869e2a799ad32b Mon Sep 17 00:00:00 2001 From: Tim Meusel Date: Tue, 25 Jun 2024 18:44:29 +0200 Subject: [PATCH] Do not rely on legacy facts --- lib/puppetserver/ca/config/puppet.rb | 5 +++-- spec/puppetserver/ca/config/puppet_spec.rb | 6 ++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/lib/puppetserver/ca/config/puppet.rb b/lib/puppetserver/ca/config/puppet.rb index 68e350b..654b0ce 100644 --- a/lib/puppetserver/ca/config/puppet.rb +++ b/lib/puppetserver/ca/config/puppet.rb @@ -77,8 +77,9 @@ def load(cli_overrides: {}, logger:, ca_dir_warn: true) end def default_certname - hostname = Facter.value(:hostname) - domain = Facter.value(:domain) + networking = Facter.value(:networking) + hostname = networking['hostname'] + domain = networking['domain'] if domain and domain != '' fqdn = [hostname, domain].join('.') else diff --git a/spec/puppetserver/ca/config/puppet_spec.rb b/spec/puppetserver/ca/config/puppet_spec.rb index e4540e4..f0e1ba4 100644 --- a/spec/puppetserver/ca/config/puppet_spec.rb +++ b/spec/puppetserver/ca/config/puppet_spec.rb @@ -338,16 +338,14 @@ context 'building the default certname' do it 'when there is a domain, concatenates the hostname and domain' do - expect(Facter).to receive(:value).with(:hostname).and_return("foo") - expect(Facter).to receive(:value).with(:domain).and_return("example.com") + expect(Facter).to receive(:value).with(:networking).and_return({'domain' => 'example.com', 'hostname' => 'foo'}) conf = Puppetserver::Ca::Config::Puppet.new expect(conf.default_certname).to eq("foo.example.com") end it 'when domain is nil, returns just the hostname' do - expect(Facter).to receive(:value).with(:hostname).and_return("foo") - expect(Facter).to receive(:value).with(:domain).and_return(nil) + expect(Facter).to receive(:value).with(:networking).and_return({'domain' => nil, 'hostname' => 'foo'}) conf = Puppetserver::Ca::Config::Puppet.new expect(conf.default_certname).to eq("foo")