Skip to content

Commit

Permalink
Merge pull request #1884 from mhashizume/maint/master/al-2
Browse files Browse the repository at this point in the history
Add package logic for Amazon Linux 2
  • Loading branch information
bastelfreak committed May 23, 2024
2 parents 7053494 + 8e60f19 commit 0b4f5ef
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 2 deletions.
4 changes: 2 additions & 2 deletions lib/beaker/host/unix/pkg.rb
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ def install_package(name, cmdline_args = '', version = nil, opts = {})
when /amazon-2023|el-(8|9|1[0-9])|fedora/
name = "#{name}-#{version}" if version
execute("dnf -y #{cmdline_args} install #{name}", opts)
when /centos|redhat|el-[1-7]-/
when /amazon-7|centos|redhat|el-[1-7]-/
name = "#{name}-#{version}" if version
execute("yum -y #{cmdline_args} install #{name}", opts)
when /ubuntu|debian/
Expand Down Expand Up @@ -167,7 +167,7 @@ def uninstall_package(name, cmdline_args = '', opts = {})
execute("zypper --non-interactive rm #{name}", opts)
when /amazon-2023|el-(8|9|1[0-9])|fedora/
execute("dnf -y #{cmdline_args} remove #{name}", opts)
when /centos|redhat|el-[1-7]-/
when /amazon-7|centos|redhat|el-[1-7]-/
execute("yum -y #{cmdline_args} remove #{name}", opts)
when /ubuntu|debian/
execute("apt-get purge #{cmdline_args} -y #{name}", opts)
Expand Down
16 changes: 16 additions & 0 deletions spec/beaker/host/unix/pkg_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,14 @@ def exec
expect(instance.install_package(pkg)).to eq "hello"
end

it "uses yum on amazon linux 2" do
@opts = { 'platform' => "amazon-7-is-me" }
pkg = 'amazon_package'
expect(Beaker::Command).to receive(:new).with("yum -y install #{pkg}", [], { :prepend_cmds => nil, :cmdexe => false }).and_return('')
expect(instance).to receive(:exec).with('', {}).and_return(generate_result("hello", { :exit_code => 0 }))
expect(instance.install_package(pkg)).to eq "hello"
end

it "uses pacman on archlinux" do
@opts = { 'platform' => 'archlinux-is-me' }
pkg = 'archlinux_package'
Expand Down Expand Up @@ -271,6 +279,14 @@ def exec
end
end

it 'Amazon Linux 2 uses yum' do
@platform = platform
@version = '7'
package_file = 'test_123.yay'
expect(instance).to receive(:execute).with(/^yum.*#{package_file}$/)
instance.install_local_package(package_file)
end

it 'Centos & EL: uses yum' do
package_file = 'testing_789.yay'
%w[centos redhat].each do |platform|
Expand Down

0 comments on commit 0b4f5ef

Please sign in to comment.