From f21705ddb88b069a2c6f6083c7dd9880147358fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Gagne=CC=81?= Date: Tue, 24 Jun 2014 22:28:35 -0400 Subject: [PATCH] Remove deprecation notice for sectionless nova_config nova_config used to accept section-less configuration name. This changed in the grizzly release of puppet-nova (c9757ec44) and section name are now required. This change removes the deprecation warning as enough time/releases where givin for people to fix their manifests if section-less configs were still in use. Change-Id: I4c6e749fd48a8cf56df750feba6f7b94a7e43c8e --- lib/puppet/type/nova_config.rb | 15 +-------------- spec/unit/type/nova_config_spec.rb | 17 ++++++++++------- 2 files changed, 11 insertions(+), 21 deletions(-) diff --git a/lib/puppet/type/nova_config.rb b/lib/puppet/type/nova_config.rb index 8dab2e71d..007546dee 100644 --- a/lib/puppet/type/nova_config.rb +++ b/lib/puppet/type/nova_config.rb @@ -3,11 +3,7 @@ Puppet::Type.newtype(:nova_config) do ensurable newparam(:name, :namevar => true) do - validate do |value| - unless value =~ /\S+\/\S+/ - fail("Invalid nova_config #{value}, entries without sections are no longer supported, please add an explicit section (probably DEFAULT) to all nova_config resources") - end - end + newvalues(/\S+\/\S+/) end newproperty(:value) do @@ -43,13 +39,4 @@ Puppet::Type.newtype(:nova_config) do defaultto false end - - validate do - if self[:ensure] == :present - if self[:value].nil? - raise Puppet::Error, "Property value must be set for #{self[:name]} when ensure is present" - end - end - end - end diff --git a/spec/unit/type/nova_config_spec.rb b/spec/unit/type/nova_config_spec.rb index fa9a78dd8..353fff087 100644 --- a/spec/unit/type/nova_config_spec.rb +++ b/spec/unit/type/nova_config_spec.rb @@ -4,43 +4,46 @@ describe 'Puppet::Type.type(:nova_config)' do before :each do @nova_config = Puppet::Type.type(:nova_config).new(:name => 'DEFAULT/foo', :value => 'bar') end + it 'should require a name' do expect { Puppet::Type.type(:nova_config).new({}) }.to raise_error(Puppet::Error, 'Title or name must be provided') end + it 'should not expect a name with whitespace' do expect { Puppet::Type.type(:nova_config).new(:name => 'f oo') - }.to raise_error(Puppet::Error, /Invalid nova_config/) + }.to raise_error(Puppet::Error, /Parameter name failed/) end + it 'should fail when there is no section' do expect { Puppet::Type.type(:nova_config).new(:name => 'foo') - }.to raise_error(Puppet::Error, /entries without sections are no longer supported/) + }.to raise_error(Puppet::Error, /Parameter name failed/) end + it 'should not require a value when ensure is absent' do Puppet::Type.type(:nova_config).new(:name => 'DEFAULT/foo', :ensure => :absent) end - it 'should require a value when ensure is present' do - expect { - Puppet::Type.type(:nova_config).new(:name => 'DEFAULT/foo', :ensure => :present) - }.to raise_error(Puppet::Error, /Property value must be set/) - end + it 'should accept a valid value' do @nova_config[:value] = 'bar' @nova_config[:value].should == 'bar' end + it 'should not accept a value with whitespace' do @nova_config[:value] = 'b ar' @nova_config[:value].should == 'b ar' end + it 'should accept valid ensure values' do @nova_config[:ensure] = :present @nova_config[:ensure].should == :present @nova_config[:ensure] = :absent @nova_config[:ensure].should == :absent end + it 'should not accept invalid ensure values' do expect { @nova_config[:ensure] = :latest