[openstack-dev] [puppet] Why do we have two providers for openstack_config ?
Sofer Athlan-Guyot
sathlang at redhat.com
Thu Aug 11 14:02:55 UTC 2016
Hi,
I kinda answered all my question myself. Here a sum up of what I have
understood https://review.openstack.org/#/c/354094/
Feel free to review.
Regards,
Sofer Athlan-Guyot <sathlang at redhat.com> writes:
> Hi,
>
> I stumbled on the fact that there are two providers for the
> openstack_config type: ruby[1]; ini_setting.rb[2].
>
> The ruby's one has a fork of the inifile ruby's provider is there[3].
>
> It is currently used by those 6 types:
>
> - neutron_lbaas_service_config
> - nova_config
> - neutron_vpnaas_service_config
> - neutron_config
> - ceilometer_config
> - barbican_config
>
> They all have in common to define the value type as an array, for
> instance in [4].
>
> A basic support for :array_matching => all in ini_setting is not hard to
> do (added there [5]).
>
> So, are there other reasons I missed, that force us to keep the second
> provider ?
>
> For instance that could be places where this array_matching => all is
> currently used in any config setting like:
>
> nova_config { 'foo/bar' => ['1','2','3'] }
>
> Or, digging into the code, I've got the impression that it's able to
> "collect" configuration like this:
>
> [foo]
> bar = 1
> bar = 2
> bar = 3
>
> but then again, not sure and didn't have to test it all.
>
> If someone has some answer to the why and how of the ruby.rb provider,
> that would be awesome. At the very least we could add it to the README.
>
> Thanks for reading this far,
> Regards,
>
> [1] https://github.com/openstack/puppet-openstacklib/blob/master/lib/puppet/provider/openstack_config/ruby.rb
> [2] https://github.com/openstack/puppet-openstacklib/blob/master/lib/puppet/provider/openstack_config/ini_setting.rb
> [3] https://github.com/openstack/puppet-openstacklib/tree/master/lib/puppet/util
> [4] https://github.com/openstack/puppet-neutron/blob/master/lib/puppet/type/neutron_lbaas_service_config.rb#L10
> [5] https://review.openstack.org/#/c/354018/
--
refos
More information about the OpenStack-dev
mailing list