diff options
Diffstat (limited to 'puppet-barometer/lib/puppet')
-rw-r--r-- | puppet-barometer/lib/puppet/provider/barometer_config/ini_setting.rb | 10 | ||||
-rw-r--r-- | puppet-barometer/lib/puppet/type/barometer_config.rb | 53 |
2 files changed, 63 insertions, 0 deletions
diff --git a/puppet-barometer/lib/puppet/provider/barometer_config/ini_setting.rb b/puppet-barometer/lib/puppet/provider/barometer_config/ini_setting.rb new file mode 100644 index 00000000..02cfeac1 --- /dev/null +++ b/puppet-barometer/lib/puppet/provider/barometer_config/ini_setting.rb @@ -0,0 +1,10 @@ +Puppet::Type.type(:barometer_config).provide( + :ini_setting, + :parent => Puppet::Type.type(:openstack_config).provider(:ini_setting) +) do + + def self.file_path + '/etc/barometer/barometer.conf' + end + +end diff --git a/puppet-barometer/lib/puppet/type/barometer_config.rb b/puppet-barometer/lib/puppet/type/barometer_config.rb new file mode 100644 index 00000000..48522a38 --- /dev/null +++ b/puppet-barometer/lib/puppet/type/barometer_config.rb @@ -0,0 +1,53 @@ +Puppet::Type.newtype(:barometer_config) do + + ensurable + + newparam(:name, :namevar => true) do + desc 'Section/setting name to manage from barometer.conf' + newvalues(/\S+\/\S+/) + end + + newproperty(:value) do + desc 'The value of the setting to be defined.' + munge do |value| + value = value.to_s.strip + value.capitalize! if value =~ /^(true|false)$/i + value + end + newvalues(/^[\S ]*$/) + + def is_to_s( currentvalue ) + if resource.secret? + return '[old secret redacted]' + else + return currentvalue + end + end + + def should_to_s( newvalue ) + if resource.secret? + return '[new secret redacted]' + else + return newvalue + end + end + end + + newparam(:secret, :boolean => true) do + desc 'Whether to hide the value from Puppet logs. Defaults to `false`.' + + newvalues(:true, :false) + + defaultto false + end + + newparam(:ensure_absent_val) do + desc 'A value that is specified as the value property will behave as if ensure => absent was specified' + defaultto('<SERVICE DEFAULT>') + end + + autorequire(:package) do + 'barometer' + end + +end |