From 44be62fc43407528d5873cdee1559c55a373257b Mon Sep 17 00:00:00 2001 From: Gabriel Nagy Date: Mon, 22 Feb 2021 19:00:25 +0200 Subject: (MODULES-10950) Infer application name from run mode Fix a regression introduced by MODULES-7397[1] which incorrectly assumed that the application name can be queried through `Puppet::Application.name`, causing lenses that are pluginsynced not to be loaded. Since we only need to find out whether or not we're running as part of `puppet agent`, it should be enough to use `Puppet.run_mode.name`, which returns `:agent` in this case, and `:user` otherwise. [1] https://github.com/puppetlabs/puppetlabs-augeas_core/pull/27 --- lib/puppet/provider/augeas/augeas.rb | 2 +- spec/unit/provider/augeas/augeas_spec.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/puppet/provider/augeas/augeas.rb b/lib/puppet/provider/augeas/augeas.rb index c8f9643..b0a3e4f 100644 --- a/lib/puppet/provider/augeas/augeas.rb +++ b/lib/puppet/provider/augeas/augeas.rb @@ -367,7 +367,7 @@ Puppet::Type.type(:augeas).provide(:augeas) do load_path.flatten! end - if Puppet::Application.name == :agent + if Puppet.run_mode.name == :agent if Puppet::FileSystem.exist?("#{Puppet[:libdir]}/augeas/lenses") load_path << "#{Puppet[:libdir]}/augeas/lenses" end diff --git a/spec/unit/provider/augeas/augeas_spec.rb b/spec/unit/provider/augeas/augeas_spec.rb index 2d53933..f98a0f4 100644 --- a/spec/unit/provider/augeas/augeas_spec.rb +++ b/spec/unit/provider/augeas/augeas_spec.rb @@ -1124,7 +1124,7 @@ describe Puppet::Type.type(:augeas).provider(:augeas) do context 'when running application is agent' do before(:each) do Puppet[:libdir] = my_fixture_dir - Puppet::Application.stubs(:name).returns(:agent) + Puppet.run_mode.stubs(:name).returns(:agent) end it 'offers pluginsync augeas/lenses subdir' do @@ -1139,7 +1139,7 @@ describe Puppet::Type.type(:augeas).provider(:augeas) do context 'when running application is not agent' do before(:each) do - Puppet::Application.stubs(:name).returns(:apply) + Puppet.run_mode.stubs(:name).returns(:user) env = Puppet::Node::Environment.create('root', ['/modules/foobar']) Puppet.stubs(:lookup).returns(env) -- cgit v1.2.3