summaryrefslogtreecommitdiff
path: root/lib/puppet/provider
diff options
context:
space:
mode:
authorChris Price <chris@puppetlabs.com>2012-07-28 21:59:54 -0700
committerChris Price <chris@puppetlabs.com>2012-07-28 21:59:54 -0700
commit9c76b6af1200c71e7ae72e0e2f349919a3081738 (patch)
treee3dc5ca1824f1fcf74c08e78d649eed394408a78 /lib/puppet/provider
parent91273a5a2b0c88e7129908406fd0933a0d88ef11 (diff)
downloadpuppet-inifile-9c76b6af1200c71e7ae72e0e2f349919a3081738.tar.gz
puppet-inifile-9c76b6af1200c71e7ae72e0e2f349919a3081738.tar.bz2
First (basic) working version of ini_setting provider
Diffstat (limited to 'lib/puppet/provider')
-rw-r--r--lib/puppet/provider/ini_setting/ruby.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/puppet/provider/ini_setting/ruby.rb b/lib/puppet/provider/ini_setting/ruby.rb
index e69de29..e44a107 100644
--- a/lib/puppet/provider/ini_setting/ruby.rb
+++ b/lib/puppet/provider/ini_setting/ruby.rb
@@ -0,0 +1,19 @@
+require 'puppet/util/ini_file'
+
+Puppet::Type.type(:ini_setting).provide(:ruby) do
+ def exists?
+ ini_file.get_value(resource[:section], resource[:setting]) == resource[:value]
+ end
+
+ def create
+ ini_file.set_value(resource[:section], resource[:setting], resource[:value])
+ ini_file.save
+ @ini_file = nil
+ end
+
+
+ private
+ def ini_file
+ @ini_file ||= Puppet::Util::IniFile.new(resource[:path])
+ end
+end