summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThom May <thom@may.lt>2017-02-09 11:25:23 +0000
committerGitHub <noreply@github.com>2017-02-09 11:25:23 +0000
commitb38a523d0137156a406fc4d9ba8f506d0e6a98a2 (patch)
tree1f200c4b5af32ae823f52342d9f84fc62cbc6449
parentc55312631df76de404d4b4361ef3da061ae0cd2a (diff)
parent23ffb3d64f016476da8861201fb7e5177df6a7d5 (diff)
downloadchef-b38a523d0137156a406fc4d9ba8f506d0e6a98a2.tar.gz
Merge pull request #5790 from chef/lcg/ban-dnf-0.6
do not support dnf_package on dnf 0.x
-rw-r--r--lib/chef/provider/package/dnf.rb6
-rw-r--r--lib/chef/resource/dnf_package.rb9
2 files changed, 10 insertions, 5 deletions
diff --git a/lib/chef/provider/package/dnf.rb b/lib/chef/provider/package/dnf.rb
index bf6aa2438f..6eb495df30 100644
--- a/lib/chef/provider/package/dnf.rb
+++ b/lib/chef/provider/package/dnf.rb
@@ -1,5 +1,5 @@
#
-# Copyright:: Copyright 2016, Chef Software, Inc.
+# Copyright:: Copyright 2016-2017, Chef Software Inc.
# License:: Apache License, Version 2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,6 +18,7 @@
require "chef/provider/package"
require "chef/resource/dnf_package"
require "chef/mixin/which"
+require "chef/mixin/shell_out"
require "chef/mixin/get_source_from_package"
require "chef/provider/package/dnf/python_helper"
require "chef/provider/package/dnf/version"
@@ -27,6 +28,7 @@ class Chef
class Package
class Dnf < Chef::Provider::Package
extend Chef::Mixin::Which
+ extend Chef::Mixin::ShellOut
include Chef::Mixin::GetSourceFromPackage
allow_nils
@@ -34,7 +36,7 @@ class Chef
use_package_name_for_source
provides :package, platform_family: %w{rhel fedora} do
- which("dnf")
+ which("dnf") && shell_out("rpm -q dnf").stdout =~ /^dnf-[1-9]/
end
provides :dnf_package, os: "linux"
diff --git a/lib/chef/resource/dnf_package.rb b/lib/chef/resource/dnf_package.rb
index 92f7532fc2..f10c282f19 100644
--- a/lib/chef/resource/dnf_package.rb
+++ b/lib/chef/resource/dnf_package.rb
@@ -1,5 +1,5 @@
#
-# Copyright:: Copyright 2016, Chef Software, Inc.
+# Copyright:: Copyright 2016-2017, Chef Software Inc.
# License:: Apache License, Version 2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -16,18 +16,21 @@
#
require "chef/resource/package"
+require "chef/mixin/which"
+require "chef/mixin/shell_out"
class Chef
class Resource
class DnfPackage < Chef::Resource::Package
extend Chef::Mixin::Which
+ extend Chef::Mixin::ShellOut
resource_name :dnf_package
allowed_actions :install, :upgrade, :remove, :purge, :reconfig, :lock, :unlock, :flush_cache
- provides :package, os: "linux", platform_family: %w{rhel fedora} do
- which("dnf")
+ provides :package, platform_family: %w{rhel fedora} do
+ which("dnf") && shell_out("rpm -q dnf").stdout =~ /^dnf-[1-9]/
end
provides :dnf_package