diff options
-rwxr-xr-x | lib/puppet/type/nameservice.rb | 5 | ||||
-rw-r--r-- | lib/puppet/type/nameservice/netinfo.rb | 2 | ||||
-rwxr-xr-x | lib/puppet/type/package/apple.rb | 14 | ||||
-rwxr-xr-x | lib/puppet/type/parsedtype.rb | 4 | ||||
-rwxr-xr-x | lib/puppet/type/parsedtype/port.rb | 6 | ||||
-rw-r--r-- | test/server/pelement.rb | 1 | ||||
-rwxr-xr-x | test/types/filesources.rb | 2 |
7 files changed, 28 insertions, 6 deletions
diff --git a/lib/puppet/type/nameservice.rb b/lib/puppet/type/nameservice.rb index df0c4b139..34a5a08e8 100755 --- a/lib/puppet/type/nameservice.rb +++ b/lib/puppet/type/nameservice.rb @@ -25,9 +25,7 @@ class Type next unless obj # In case there was an error somewhere - obj.retrieve - - + #obj.retrieve obj end end @@ -120,7 +118,6 @@ class State # cases. def retrieve if obj = @parent.getinfo(true) - if method = self.class.posixmethod || self.class.name @is = obj.send(method) else diff --git a/lib/puppet/type/nameservice/netinfo.rb b/lib/puppet/type/nameservice/netinfo.rb index f0da5294a..786485b2c 100644 --- a/lib/puppet/type/nameservice/netinfo.rb +++ b/lib/puppet/type/nameservice/netinfo.rb @@ -82,6 +82,8 @@ module Puppet end # Retrieve the data, yo. + # FIXME This should retrieve as much information as possible, + # rather than retrieving it one at a time. def retrieve NetInfo.flush dir = @parent.class.netinfodir diff --git a/lib/puppet/type/package/apple.rb b/lib/puppet/type/package/apple.rb index 34d66ef37..563449c2e 100755 --- a/lib/puppet/type/package/apple.rb +++ b/lib/puppet/type/package/apple.rb @@ -21,6 +21,20 @@ module Puppet raise Puppet::PackageError.new(output) end end + + def list + packages = [] + + Dir.entries("/Library/Receipts").find { |f| + f =~ /\.pkg$/ + }.collect { |f| + Puppet.type(:package).installedpkg( + :name => f.sub(/\.pkg/, ''), + :type => :apple, + :ensure => :installed + ) + } + end end end diff --git a/lib/puppet/type/parsedtype.rb b/lib/puppet/type/parsedtype.rb index 5c8a46bb6..de8e563a3 100755 --- a/lib/puppet/type/parsedtype.rb +++ b/lib/puppet/type/parsedtype.rb @@ -305,7 +305,9 @@ module Puppet def retrieve self.class.retrieve() - self.eachstate { |st| st.retrieve } + self.eachstate { |st| + st.retrieve + } end # Write the entire host file out. diff --git a/lib/puppet/type/parsedtype/port.rb b/lib/puppet/type/parsedtype/port.rb index 8eac31def..f8a08913f 100755 --- a/lib/puppet/type/parsedtype/port.rb +++ b/lib/puppet/type/parsedtype/port.rb @@ -172,6 +172,12 @@ module Puppet end end else + if line =~ /^\s+\d+/ and + Facter["operatingsystem"].value == "Darwin" + #Puppet.notice "Skipping wonky OS X port entry %s" % + # line.inspect + next + end raise Puppet::Error, "Could not match '%s'" % line end diff --git a/test/server/pelement.rb b/test/server/pelement.rb index 7d39d05c1..1a6458768 100644 --- a/test/server/pelement.rb +++ b/test/server/pelement.rb @@ -220,6 +220,7 @@ class TestPElementServer < Test::Unit::TestCase count = 0 described = {} + Puppet.info "listing again" type.list.each do |obj| assert_instance_of(type, obj) diff --git a/test/types/filesources.rb b/test/types/filesources.rb index d9afcf681..b9f3a7fdb 100755 --- a/test/types/filesources.rb +++ b/test/types/filesources.rb @@ -195,7 +195,7 @@ class TestFileSources < Test::Unit::TestCase fromtree = file_list(fromdir) totree = file_list(todir) - assert(fromtree != totree) + assert(fromtree != totree, "Trees are incorrectly equal") # then remove our new files FileUtils.cd(todir) { |