diff options
author | Reid Vandewiele <reid@puppetlabs.com> | 2012-09-29 12:39:00 -0700 |
---|---|---|
committer | Reid Vandewiele <reid@puppetlabs.com> | 2012-09-29 12:39:00 -0700 |
commit | 3829e20c49652660aeac5c33f638dd19dca41f8e (patch) | |
tree | 952a5cac41530e0f5a1a7665f1a792a8df5143f5 | |
parent | e81a69adb5049f1b8fb433b3f37d82a4bb69d573 (diff) | |
download | puppet-inifile-3829e20c49652660aeac5c33f638dd19dca41f8e.tar.gz puppet-inifile-3829e20c49652660aeac5c33f638dd19dca41f8e.tar.bz2 |
Allow values with spaces to be parsed and set
Previously, the following stanza would fail as a result of the
ini_setting type not being able to parse spaces in setting values.
ini_setting { 'main_config_version':
ensure => present,
path => '/etc/puppetlabs/puppet/puppet.conf',
section => 'main',
setting => 'config_version',
value => '/etc/puppetlabs/puppet/config_version.sh $environment',
}
This commit modifes the SETTING_REGEX to account for spaces in setting values.
-rw-r--r-- | lib/puppet/util/ini_file.rb | 2 | ||||
-rw-r--r-- | spec/unit/puppet/util/ini_file_spec.rb | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/lib/puppet/util/ini_file.rb b/lib/puppet/util/ini_file.rb index 36bc8a6..b2e554f 100644 --- a/lib/puppet/util/ini_file.rb +++ b/lib/puppet/util/ini_file.rb @@ -6,7 +6,7 @@ module Util class IniFile SECTION_REGEX = /^\s*\[([\w\d\.\\\/\-\:]+)\]\s*$/ - SETTING_REGEX = /^\s*([\w\d\.\\\/\-]+)\s*=\s*([\S]+)\s*$/ + SETTING_REGEX = /^\s*([\w\d\.\\\/\-]+)\s*=\s*([\S\s]*\S)\s*$/ def initialize(path, key_val_separator = ' = ') @path = path diff --git a/spec/unit/puppet/util/ini_file_spec.rb b/spec/unit/puppet/util/ini_file_spec.rb index f30c8cd..479085e 100644 --- a/spec/unit/puppet/util/ini_file_spec.rb +++ b/spec/unit/puppet/util/ini_file_spec.rb @@ -26,6 +26,7 @@ foo= foovalue2 baz=bazvalue #another comment ; yet another comment + zot = multi word value EOS template.split("\n") } @@ -45,6 +46,7 @@ baz=bazvalue subject.get_value("section1", "bar").should == "barvalue" subject.get_value("section2", "foo").should == "foovalue2" subject.get_value("section2", "baz").should == "bazvalue" + subject.get_value("section2", "zot").should == "multi word value" end end @@ -102,4 +104,4 @@ foo=foovalue end end -end
\ No newline at end of file +end |