summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDan Bode <dan@puppetlabs.com>2010-06-21 09:24:58 -0700
committerDan Bode <dan@puppetlabs.com>2010-06-21 09:24:58 -0700
commit38e373fc67ff7447eb1052a40979d1e9df5934ba (patch)
treefb4ae829ced3484e667b7f546cc801b0cf43d6c2 /lib
parent969dd66a4de43818dcff5afdbf1d79d7c23f01e8 (diff)
namevar validation only if managed.
moved namevar to newparam arg.
Diffstat (limited to 'lib')
-rw-r--r--lib/puppet/type/sudoers.rb11
1 files changed, 5 insertions, 6 deletions
diff --git a/lib/puppet/type/sudoers.rb b/lib/puppet/type/sudoers.rb
index 8aa01db..2bcba92 100644
--- a/lib/puppet/type/sudoers.rb
+++ b/lib/puppet/type/sudoers.rb
@@ -75,19 +75,18 @@ Defaults@host x=y,one=1,two=2
# support absent and present (also purge -> true)
ensurable
- newparam(:name) do
+ newparam(:name, :namevar => true) do
desc "Either the name of the alias, default, or arbitrary unique string for user specifications"
- isnamevar
munge do |value|
#puts "params \n#{resource.original_parameters.to_yaml}\n"
value
end
# this fails for existing resources, just dont use fake_namevar stuff!
validate do |name|
- if name =~ /^fake_namevar_\d+/
- unless resource.original_parameters[:provider].get('record_type') == :parsed
- raise Puppet::Error, "cannot use reserved namevar #{name}"
- end
+ # please forgive this dirty hack, but only managed lines can
+ # have lines
+ if (name =~ /^fake_namevar_\d+/ and resource.line)
+ raise Puppet::Error, "cannot use reserved namevar #{name}"
end
end
end