Merge pull request #211 from HelenCampbell/revertFix

(MODULES-3472) Fix backwards compatability for create_ini_settings
This commit is contained in:
David Schmitt 2016-07-19 11:17:43 +01:00 committed by GitHub
commit 1434fedbe3
7 changed files with 29 additions and 5 deletions

View file

@ -1,3 +1,4 @@
fixtures:
symlinks:
inifile: "#{source_dir}"
create_multiple_ini_settings: "#{source_dir}/spec/fixtures/create_multiple_ini_settings"

3
.gitignore vendored
View file

@ -2,7 +2,8 @@
pkg/
Gemfile.lock
vendor/
spec/fixtures/
spec/fixtures/manifests/
spec/fixtures/modules/
.vagrant/
.bundle/
coverage/

View file

@ -449,6 +449,8 @@ Default value: '{}'.
This module has been tested on [all PE-supported platforms](https://forge.puppetlabs.com/supported#compat-matrix), and no issues have been identified. Additionally, it is tested (but not supported) on Windows 7, Mac OS X 10.9, and Solaris 12.
Due to (PUP-4709) the create_ini_settings function will cause errors when attempting to create multiple ini_settings in one go when using Puppet 4.0.x or 4.1.x. If needed, the temporary fix for this can be found here: https://github.com/puppetlabs/puppetlabs-inifile/pull/196.
##Development
Puppet Labs modules on the Puppet Forge are open projects, and community contributions are essential for keeping them great. We can't access the huge number of platforms and myriad of hardware, software, and deployment configurations that Puppet is intended to serve.

View file

@ -69,7 +69,7 @@ EOS
end
settings[section].each do |setting, value|
res["#{path} #{section} #{setting}"] = {
res["#{path} [#{section}] #{setting}"] = {
'ensure' => 'present',
'section' => section,
'setting' => setting,

View file

@ -2,21 +2,21 @@ require 'spec_helper'
# end-to-end test of the create_init_settings function
describe 'create_ini_settings_test' do
it { should have_ini_setting_resource_count(3) }
it { should contain_ini_setting('/tmp/foo.ini section1 setting1').with(
it { should contain_ini_setting('/tmp/foo.ini [section1] setting1').with(
:ensure => 'present',
:section => 'section1',
:setting => 'setting1',
:value => 'val1',
:path => '/tmp/foo.ini'
)}
it { should contain_ini_setting('/tmp/foo.ini section2 setting2').with(
it { should contain_ini_setting('/tmp/foo.ini [section2] setting2').with(
:ensure => 'present',
:section => 'section2',
:setting => 'setting2',
:value => 'val2',
:path => '/tmp/foo.ini'
)}
it { should contain_ini_setting('/tmp/foo.ini section2 setting3').with(
it { should contain_ini_setting('/tmp/foo.ini [section2] setting3').with(
:ensure => 'absent',
:section => 'section2',
:setting => 'setting3',

View file

@ -0,0 +1,5 @@
require 'spec_helper'
describe 'create_multiple_ini_settings' do
it { is_expected.to compile }
end

View file

@ -0,0 +1,15 @@
class create_multiple_ini_settings {
$defaults = { 'path' => '/tmp/foo.ini' }
$example = {
'section1' => {
'setting1' => 'value1',
'settings2' => {
'ensure' => 'absent'
}
}
}
create_ini_settings($example, $defaults)
}