diff --git a/lib/puppet-swagger-generator/files/swagger/provider.rb b/lib/puppet-swagger-generator/files/swagger/provider.rb index 1093b18..31c96c1 100644 --- a/lib/puppet-swagger-generator/files/swagger/provider.rb +++ b/lib/puppet-swagger-generator/files/swagger/provider.rb @@ -35,7 +35,7 @@ def self.prefetch(resources) end def exists? - Puppet.info("Checking if #{name} exists") + Puppet.debug("Checking if #{resource.type}[#{name}] exists") @property_hash[:ensure] and @property_hash[:ensure] != :absent end diff --git a/lib/puppet-swagger-generator/templates/type.erb b/lib/puppet-swagger-generator/templates/type.erb index e3db0d2..43a1bf1 100644 --- a/lib/puppet-swagger-generator/templates/type.erb +++ b/lib/puppet-swagger-generator/templates/type.erb @@ -16,7 +16,7 @@ Puppet::Type.newtype(:<%= namespace %>_<%= name %>) do validate do required_properties = [ <% model['required'].each do |property| %> - <%= property.swagger_to_snake_case.to_sym %>, + :<%= property.swagger_to_snake_case.to_sym %>, <% end %> ] required_properties.each do |property| @@ -33,8 +33,12 @@ Puppet::Type.newtype(:<%= namespace %>_<%= name %>) do end <% model['properties'].each do |property_name, details| %> <% unless exclusions.include? property_name %> + <% if details['type'] == 'array' %> + newproperty(:<%= property_name.swagger_to_snake_case %>, :array_matching => :all) do + <% else %> newproperty(:<%= property_name.swagger_to_snake_case %>) do - <% if model['description'] %> + <% end %> + <% if details['description'] %> desc "<%= details['description'].gsub('"', "'") %>" <% end %> def insync?(is)