puppet-trove/lib/puppet/type/trove_datastore_version.rb
Takashi Kajinami 0541ab7507 trove_datastore_version: Validate status
The status argument of datastore_version update command accepts only
0 or 1. This ensures a correct value is used by property validation
instead of attempting to execute the command with an invalid value.

Change-Id: I3eeace41c677157d6b5913a7ab9092e3456106a7
2023-02-24 03:24:07 +09:00

44 lines
891 B
Ruby

Puppet::Type.newtype(:trove_datastore_version) do
@doc = "Manage creation of Trove datastore versions"
ensurable
newparam(:name, :namevar => true) do
desc "Datastore version"
end
newparam(:datastore) do
desc "Datastore name"
end
newparam(:manager) do
desc "Manager name"
end
newparam(:image_id) do
desc "Glance image id"
end
newparam(:packages) do
desc "Packages to install"
end
newparam(:active) do
desc "State"
newvalues('0', '1')
defaultto('1')
end
validate do
raise(Puppet::Error, 'Datastore must be set') unless self[:datastore]
raise(Puppet::Error, 'Manager must be set') unless self[:manager]
raise(Puppet::Error, 'Image must be set') unless self[:image_id]
raise(Puppet::Error, 'Packages must be set') unless self[:packages]
end
autorequire(:anchor) do
['trove::service::end']
end
end