puppet-swift/lib/puppet/provider/swift_config/ini_setting.rb
Yanis Guenane e6e8c9d836 Reflect provider change in puppet-openstacklib
With the creation of the new openstack_config provider, some processing
that was done in swift_config has been centralized in
openstack_config.

Impacted methods are :

  * section
  * setting
  * separator

Also, this commit adds the fact that, when passing a specific string
(ensure_absent_val) the provider will behave as if ensure => absent was
specified. '<SERVICE DEFAULT>' is the default value for
ensure_absent_val.

The use case is the following :

swift_config { 'DEFAULT/foo' : value => 'bar' } # will work as usual

swift_config { 'DEFAULT/foo' : value => '<SERVICE DEFAULT>' } # will mean absent

That means that all the current :

if $myvar {
  swift_config { 'DEFAULT/foo' : value => $myvar }
} else {
  swift_config { 'DEFAULT/foo' : ensure => absent }
}

can be removed in favor of :

swift_config { 'DEFAULT/foo' : value => $myvar }

If for any reason '<SERVICE DEFAULT>' turns out to be a valid value for
a specific parameter. One could by pass that doing the following :

swift_config { 'DEFAULT/foo' : value => '<SERVICE DEFAULT>',
ensure_absent_val => 'foo' }

Change-Id: I9281d2cae81f9799327f7f6e04498d6bc723f233
Depends-On: I0eeebde3aac2662cc7e69bfad7f8d2481463a218
2015-08-19 12:00:34 +02:00

11 lines
197 B
Ruby

Puppet::Type.type(:swift_config).provide(
:ini_setting,
:parent => Puppet::Type.type(:openstack_config).provider(:ini_setting)
) do
def self.file_path
'/etc/swift/swift.conf'
end
end