diff options
| author | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-09-19 05:35:53 +0000 |
|---|---|---|
| committer | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-09-19 05:35:53 +0000 |
| commit | 8cbe19f2aa68bd9c331bd8423fed149120754f70 (patch) | |
| tree | 0cf0b67fb19bd432f385f82f70b922b92448df69 /lib | |
| parent | 613781258282a3928ca9dfead457d73303636241 (diff) | |
| download | puppet-8cbe19f2aa68bd9c331bd8423fed149120754f70.tar.gz puppet-8cbe19f2aa68bd9c331bd8423fed149120754f70.tar.xz puppet-8cbe19f2aa68bd9c331bd8423fed149120754f70.zip | |
Fixing the same bug in the netinfo provider -- it was retrieving the "is" value instead of the "should" value
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1625 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/puppet/provider/nameservice/netinfo.rb | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/lib/puppet/provider/nameservice/netinfo.rb b/lib/puppet/provider/nameservice/netinfo.rb index d7d6123e6..5d6c19969 100644 --- a/lib/puppet/provider/nameservice/netinfo.rb +++ b/lib/puppet/provider/nameservice/netinfo.rb @@ -62,7 +62,7 @@ class NetInfo < Puppet::Provider::NameService # We need to generate the id if it's missing. @model.class.validstates.each do |name| next if name == :ensure - unless val = @model[name] + unless val = @model.should(name) if (@model.class.name == :user and name == :uid) or (@model.class.name == :group and name == :gid) val = autogen() @@ -77,14 +77,6 @@ class NetInfo < Puppet::Provider::NameService end end - #def exists? - # if self.report(:name) - # return true - # else - # return false - # end - #end - # Retrieve a specific value by name. def get(param) hash = getinfo(false) @@ -149,9 +141,15 @@ class NetInfo < Puppet::Provider::NameService self.class.name end end - self.debug "Executing %s" % cmd.join(" ").inspect - %x{#{cmd.join(" ")} 2>&1}.split("\n").each { |line| + begin + output = execute(cmd.join(" ")) + rescue Puppet::ExecutionFailure => detail + Puppet.err "Failed to call nireport: %s" % detail + return nil + end + + output.split("\n").each { |line| values = line.split(/\t/) hash = {} |
