7d8e69c22847a61cd0023c0431dffa2a5b592524
[mirror/dsa-puppet.git] / 3rdparty / modules / neutron / lib / puppet / type / neutron_plugin_midonet.rb
1 Puppet::Type.newtype(:neutron_plugin_midonet) do
2
3   ensurable
4
5   newparam(:name, :namevar => true) do
6     desc 'Section/setting name to manage from midonet.ini'
7     newvalues(/\S+\/\S+/)
8   end
9
10   autorequire(:file) do
11     ['/etc/neutron/plugins/midonet']
12   end
13
14   autorequire(:package) do ['neutron'] end
15
16   newproperty(:value) do
17     desc 'The value of the setting to be defined.'
18     munge do |value|
19       value = value.to_s.strip
20       value.capitalize! if value =~ /^(true|false)$/i
21       value
22     end
23
24     def is_to_s( currentvalue )
25       if resource.secret?
26         return '[old secret redacted]'
27       else
28         return currentvalue
29       end
30     end
31
32     def should_to_s( newvalue )
33       if resource.secret?
34         return '[new secret redacted]'
35       else
36         return newvalue
37       end
38     end
39   end
40
41   newparam(:secret, :boolean => true) do
42     desc 'Whether to hide the value from Puppet logs. Defaults to `false`.'
43
44     newvalues(:true, :false)
45
46     defaultto false
47   end
48
49 end