From 01c637b4296384b6f02eae6d78567d9eeb80a119 Mon Sep 17 00:00:00 2001 From: Sean Millichamp Date: Mon, 16 Oct 2023 15:28:36 -0400 Subject: [PATCH 1/2] (PUP-11666) Mark resources type as valid for hosts and devices The resources type is useful on both hosts and devices and is compatible as is in both modes. --- lib/puppet/type/resources.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/puppet/type/resources.rb b/lib/puppet/type/resources.rb index 0aef31c92a7..ecf2bc1a3fb 100644 --- a/lib/puppet/type/resources.rb +++ b/lib/puppet/type/resources.rb @@ -7,6 +7,7 @@ so you can purge unmanaged resources but set `noop` to true so the purging is only logged and does not actually happen." + apply_to_all newparam(:name) do desc "The name of the type to be managed." From 282debb1b1c3ed64faaeb3ea932562192c9e0827 Mon Sep 17 00:00:00 2001 From: Vadym Chepkov Date: Wed, 25 Oct 2023 19:33:57 -0400 Subject: [PATCH 2/2] (PUP-11976) adjust package/service providers for Amazon Linux 2023 for puppet 7.x --- lib/puppet/provider/package/dnf.rb | 1 + lib/puppet/provider/service/systemd.rb | 6 +++--- spec/unit/provider/package/dnf_spec.rb | 7 +++++++ spec/unit/provider/service/systemd_spec.rb | 12 +++++++----- 4 files changed, 18 insertions(+), 8 deletions(-) diff --git a/lib/puppet/provider/package/dnf.rb b/lib/puppet/provider/package/dnf.rb index 4436873bc5e..b85ca2bd581 100644 --- a/lib/puppet/provider/package/dnf.rb +++ b/lib/puppet/provider/package/dnf.rb @@ -32,6 +32,7 @@ notdefaultfor :operatingsystem => :fedora, :operatingsystemmajrelease => (19..21).to_a defaultfor :osfamily => :redhat notdefaultfor :osfamily => :redhat, :operatingsystemmajrelease => (4..7).to_a + defaultfor :operatingsystem => :amazon, :operatingsystemmajrelease => ["2023"] def self.update_command # In DNF, update is deprecated for upgrade diff --git a/lib/puppet/provider/service/systemd.rb b/lib/puppet/provider/service/systemd.rb index 6a451f0f8a0..03ad0d94f55 100644 --- a/lib/puppet/provider/service/systemd.rb +++ b/lib/puppet/provider/service/systemd.rb @@ -18,7 +18,7 @@ defaultfor :osfamily => :redhat, :operatingsystem => :fedora defaultfor :osfamily => :suse defaultfor :osfamily => :coreos - defaultfor :operatingsystem => :amazon, :operatingsystemmajrelease => ["2"] + defaultfor :operatingsystem => :amazon, :operatingsystemmajrelease => ["2", "2023"] defaultfor :operatingsystem => :debian notdefaultfor :operatingsystem => :debian, :operatingsystemmajrelease => ["5", "6", "7"] # These are using the "debian" method defaultfor :operatingsystem => :LinuxMint @@ -39,8 +39,8 @@ def self.instances return [] end - # Static services cannot be enabled or disabled manually. Indirect services - # should not be enabled or disabled due to limitations in systemd (see + # Static services cannot be enabled or disabled manually. Indirect services + # should not be enabled or disabled due to limitations in systemd (see # https://github.com/systemd/systemd/issues/6681). def enabled_insync?(current) case cached_enabled?[:output] diff --git a/spec/unit/provider/package/dnf_spec.rb b/spec/unit/provider/package/dnf_spec.rb index 9a4e9b8b3c9..2efde834480 100644 --- a/spec/unit/provider/package/dnf_spec.rb +++ b/spec/unit/provider/package/dnf_spec.rb @@ -42,6 +42,13 @@ allow(Facter).to receive(:value).with(:operatingsystemmajrelease).and_return("8") expect(described_class).to be_default end + + it "should be the default provider on Amazon Linux 2023" do + allow(Facter).to receive(:value).with(:osfamily).and_return(:redhat) + allow(Facter).to receive(:value).with(:operatingsystem).and_return(:amazon) + allow(Facter).to receive(:value).with(:operatingsystemmajrelease).and_return("2023") + expect(described_class).to be_default + end end describe 'provider features' do diff --git a/spec/unit/provider/service/systemd_spec.rb b/spec/unit/provider/service/systemd_spec.rb index 48dafc46c29..f473c592ee4 100644 --- a/spec/unit/provider/service/systemd_spec.rb +++ b/spec/unit/provider/service/systemd_spec.rb @@ -56,11 +56,13 @@ end end - it "should be the default provider on Amazon Linux 2.0" do - allow(Facter).to receive(:value).with(:osfamily).and_return(:redhat) - allow(Facter).to receive(:value).with(:operatingsystem).and_return(:amazon) - allow(Facter).to receive(:value).with(:operatingsystemmajrelease).and_return("2") - expect(provider_class).to be_default + [ 2, 2023 ].each do |ver| + it "should be the default provider on Amazon Linux #{ver}" do + allow(Facter).to receive(:value).with(:osfamily).and_return(:redhat) + allow(Facter).to receive(:value).with(:operatingsystem).and_return(:amazon) + allow(Facter).to receive(:value).with(:operatingsystemmajrelease).and_return("#{ver}") + expect(provider_class).to be_default + end end it "should not be the default provider on Amazon Linux 2017.09" do