summaryrefslogtreecommitdiff
path: root/lib/puppet/provider/sudoers/parsed.rb
diff options
context:
space:
mode:
authorDan Bode <dan@bodepd.com>2010-05-23 18:42:53 -0500
committerDan Bode <dan@bodepd.com>2010-05-23 18:42:53 -0500
commit37099d6d140f073522f9f9b37ba2a9b429433f25 (patch)
tree695f54b5a7c855f3983300cf72fafa7b9731b941 /lib/puppet/provider/sudoers/parsed.rb
parent3ef36b6948bd39c91f62fd9d33eae3f1dfe3234c (diff)
fixes for:
- fake namevar for unmanaged user specs. - checking ensure in type, to differentiate self.instances type calls. - changed add line message from info to debug
Diffstat (limited to 'lib/puppet/provider/sudoers/parsed.rb')
-rw-r--r--lib/puppet/provider/sudoers/parsed.rb17
1 files changed, 10 insertions, 7 deletions
diff --git a/lib/puppet/provider/sudoers/parsed.rb b/lib/puppet/provider/sudoers/parsed.rb
index d146fe5..8d901ff 100644
--- a/lib/puppet/provider/sudoers/parsed.rb
+++ b/lib/puppet/provider/sudoers/parsed.rb
@@ -82,7 +82,7 @@ Puppet::Type.type(:sudoers).provide(
if element =~ /^\s*(\S+)\s+(\S+)\s*$/
user, host = $1, $2
if currentsymbol == :hosts
- raise Exception, 'found more than one whitespace delim in users_hosts'
+ raise Puppet::Error, 'found more than one whitespace delim in users_hosts'
end
# sweet we found the delim between user and host
hash[currentsymbol] << user.gsub(/\s/, '')
@@ -92,7 +92,7 @@ Puppet::Type.type(:sudoers).provide(
elsif element =~ /\s*\S+\s*/
hash[currentsymbol] << element.gsub(/\s/, '')
else
- raise Exception, "Malformed user spec line lhs: #{lhs}"
+ raise Puppet::Error, "Malformed user spec line lhs: #{lhs}"
end
end
end
@@ -118,7 +118,8 @@ Puppet::Type.type(:sudoers).provide(
def self.prefetch_hook(records)
# store comment name vars when we find them
name,comment=nil
- results = records.each do |record|
+ results = records.each_index do |index|
+ record = records[index]
if(record[:record_type] == :comment)
# if we are a namevar comment
#puts "found a comment: #{record.to_yaml}"
@@ -140,7 +141,9 @@ Puppet::Type.type(:sudoers).provide(
record[:name] = name
name = nil
else
- Puppet.info "spec record not created by puppet"
+ fake_namevar = "fake_namevar_#{index}"
+ Puppet.warning "user spec record not created by puppet, adding fake namevar #{fake_namevar}"
+ record[:name] = fake_namevar
# probably a pre-exting record not created by puppet
end
end
@@ -184,7 +187,7 @@ Puppet::Type.type(:sudoers).provide(
commands=self.array_convert(hash[:commands])
str = "#Puppet NAMEVAR #{hash[:name]}"
str << "\n#{users} #{hosts}=#{commands}"
- Puppet.notice "adding line: #{str}"
+ Puppet.debug "adding line: #{str}"
str
end
@@ -195,7 +198,7 @@ Puppet::Type.type(:sudoers).provide(
# since different attributes make sense based on ensure value (dir/file/symlink)
items=self.array_convert(hash[:items])
str = "#{hash[:sudo_alias]} #{hash[:name]}=#{items}"
- Puppet.notice "adding line: #{str}"
+ Puppet.debug "adding line: #{str}"
str
end
@@ -204,7 +207,7 @@ Puppet::Type.type(:sudoers).provide(
def self.default_to_line(hash)
parameters=self.array_convert(hash[:parameters])
str = "#{hash[:name]} #{parameters}"
- Puppet.notice "Adding line #{str}"
+ Puppet.debug "Adding line #{str}"
str
end