diff options
Diffstat (limited to 'lib/chef/resource/freebsd_package.rb')
-rw-r--r-- | lib/chef/resource/freebsd_package.rb | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/chef/resource/freebsd_package.rb b/lib/chef/resource/freebsd_package.rb index ecaff95244..eedddf28e7 100644 --- a/lib/chef/resource/freebsd_package.rb +++ b/lib/chef/resource/freebsd_package.rb @@ -32,19 +32,26 @@ class Chef resource_name :freebsd_package provides :package, platform: "freebsd" + # make sure we assign the appropriate underlying providers based on what + # package managers exist on this FreeBSD system or the source of the package + # + # @return [void] def after_created assign_provider end + # Is the system at least version 1000017 or is the make variable WITH_PKGNG set + # + # @return [Boolean] do we support pkgng def supports_pkgng? ships_with_pkgng? || !!shell_out_compact!("make", "-V", "WITH_PKGNG", :env => nil).stdout.match(/yes/i) end private + # It was not until __FreeBSD_version 1000017 that pkgng became + # the default binary package manager. See '/usr/ports/Mk/bsd.port.mk'. def ships_with_pkgng? - # It was not until __FreeBSD_version 1000017 that pkgng became - # the default binary package manager. See '/usr/ports/Mk/bsd.port.mk'. node[:os_version].to_i >= 1000017 end |