Closed jacraig-vcu closed 5 years ago
We are dealing with the same issue .. Changing the values from true/false to 1/0 in Puppet doesn't get accepted.
Same problem here
Hi, are there any updates on this? :) We are now still on version 3.3.3 of your module, and now are getting the following error after upgrading to RHL Satellite 6.4.0 when running puppet:
Config/rhsm_config[/etc/rhsm/rhsm.conf]: Could not evaluate: Invalid parameter rhsm_repomd_gpg_url
We added "rhsm_repomd_gpg_url" as a new property in /lib/puppet/type/rhsm_config.rb + added it in /data/defaults.yaml and it was solved, but we are nevertheless looking forward to have the current boolean bug resolved.
This is a bug in the rhsm_config provider. I have hit this in production and will need to re-write the rhsm_config type and subscription_manager provider to fix this.
Puppet has a major bug with boolean properties. If they are false then Puppet stops managing them.
Instead of boolean propeties, rhsm_config provides 'binary' options that can be true or false. These are to map to 1 or 0 in the rhsm.conf file.
The bug in Puppet effectively broke this module from 3.3 until 5.0.0. The 4.x series was unpublished as attempts to deal with the Puppet bug only made the problem worse. 5.x and later abandoned any pretense of boolean properties and is supposed to use 0 or 1 (or mapping of false and true to 0 and 1.)
Per https://bugzilla.redhat.com/show_bug.cgi?id=1462759 and https://www.mankier.com/5/rhsm.conf these settings are 1 or 0 and can never be the strings "true" or "false":
This setting might be limited to 1 or 0 rhsm.auto_enable_yum_plugins depending on the subscription_manager version.
This will not require an API breaking change so the 5.x series will be able to accept it.
This is deployed now and widely tested.
When using module v5.0.0 and running Puppet open source 5.5.x and 6.0.x, the following is observed:
This translates to the strings 'true' and 'false' being defined in '/etc/rhsm/rhsm.conf' for each of the listed items, in lieu of the expected integers 1 and 0, respectively.
This results in various errors, including the following when running 'yum':