From ce6e8679b68f984415adc90d74083fd787234709 Mon Sep 17 00:00:00 2001
From: Adam S <asa188@sfu.ca>
Date: Fri, 25 Sep 2015 17:55:21 -0700
Subject: Add package_provider fact

This adds a package_provider fact for situations where we need to be
able to know the client's package provider in a simple way.  Situations
such as: package { 'name': install_options => [] }  As those tend to be
package provider specific options.
---
 lib/facter/package_provider.rb | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
 create mode 100644 lib/facter/package_provider.rb

(limited to 'lib')

diff --git a/lib/facter/package_provider.rb b/lib/facter/package_provider.rb
new file mode 100644
index 0000000..9a4ec65
--- /dev/null
+++ b/lib/facter/package_provider.rb
@@ -0,0 +1,17 @@
+# Fact: package_provider
+#
+# Purpose: Returns the default provider Puppet will choose to manage packages
+#   on this system
+#
+# Resolution: Instantiates a dummy package resource and return the provider
+#
+# Caveats:
+#
+require 'puppet/type'
+require 'puppet/type/package'
+
+Facter.add(:package_provider) do
+  setcode do
+    Puppet::Type.type(:package).newpackage(:name => 'dummy')[:provider].to_s
+  end
+end
-- 
cgit v1.2.3