diff --git a/lib/puppet/provider/hocon_setting/ruby.rb b/lib/puppet/provider/hocon_setting/ruby.rb index 6fa546a..872820d 100644 --- a/lib/puppet/provider/hocon_setting/ruby.rb +++ b/lib/puppet/provider/hocon_setting/ruby.rb @@ -5,8 +5,6 @@ require 'hocon/config_value_factory' end -require File.expand_path('../../../util/config_saver', __FILE__) - Puppet::Type.type(:hocon_setting).provide(:ruby) do def self.namevar(section_name, setting) "#{setting}" @@ -18,13 +16,13 @@ def exists? def create conf_file_modified = set_value(resource[:value]) - Puppet::Util::ConfigSaver.save(resource[:path], conf_file_modified) + write_conf(conf_file_modified) @conf_file = nil end def destroy conf_file_modified = conf_file.remove_value(setting) - Puppet::Util::ConfigSaver.save(resource[:path], conf_file_modified) + write_conf(conf_file_modified) @conf_file = nil end @@ -50,7 +48,7 @@ def value def value=(new_value) conf_file_modified = set_value(new_value) - Puppet::Util::ConfigSaver.save(resource[:path], conf_file_modified) + write_conf(conf_file_modified) @conf_file = nil end @@ -70,6 +68,13 @@ def conf_file @conf_file ||= Hocon::Parser::ConfigDocumentFactory.parse_file(file_path) end + def write_conf(conf) + File.open(file_path, 'w+') do |fh| + config_string = conf.render + fh.puts(config_string) + end + end + def conf_object if @conf_file.nil? && (not File.exist?(file_path)) File.new(file_path, "w") diff --git a/lib/puppet/util/config_saver.rb b/lib/puppet/util/config_saver.rb deleted file mode 100644 index a2ec9c9..0000000 --- a/lib/puppet/util/config_saver.rb +++ /dev/null @@ -1,15 +0,0 @@ -require 'hocon' -require 'hocon/config_render_options' - -module Puppet - module Util - class ConfigSaver - def self.save(path, conf) - File.open(path, 'w+') do |fh| - config_string = conf.render - fh.puts(config_string) - end - end - end - end -end \ No newline at end of file