summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorshafer <shafer@980ebf18-57e1-0310-9a29-db15c13687c0>2005-09-15 07:16:52 +0000
committershafer <shafer@980ebf18-57e1-0310-9a29-db15c13687c0>2005-09-15 07:16:52 +0000
commit6767dd2afd1061721147a3fa60174f560724f054 (patch)
treef0953b3924950d1276ff7a150289aab846edeb16 /lib
parent39aaa9910f8bc5a120f35233d6dda0b06150747b (diff)
downloadpuppet-6767dd2afd1061721147a3fa60174f560724f054.tar.gz
puppet-6767dd2afd1061721147a3fa60174f560724f054.tar.xz
puppet-6767dd2afd1061721147a3fa60174f560724f054.zip
debugged ignore in fileserver, added tests to ignore tc and fixed server.list in tc for filesources and fileserver
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@668 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib')
-rwxr-xr-xlib/puppet/server/fileserver.rb11
-rw-r--r--lib/puppet/type/pfile.rb18
2 files changed, 18 insertions, 11 deletions
diff --git a/lib/puppet/server/fileserver.rb b/lib/puppet/server/fileserver.rb
index a486874b6..3bf3582cc 100755
--- a/lib/puppet/server/fileserver.rb
+++ b/lib/puppet/server/fileserver.rb
@@ -82,10 +82,13 @@ class Server
end
def handleignore(children, path, ignore)
- ignore.each { |ignore|
- ignored = Dir.glob(File.join(path,ignore), File::FNM_DOTMATCH)
- children = children - ignored
- }
+ ignore.each { |ignorepat|
+ ignored = []
+ Dir.glob(File.join(path,ignore), File::FNM_DOTMATCH) { |match|
+ ignored.push(File.basename(match))
+ }
+ children = children - ignored
+ }
return children
end
diff --git a/lib/puppet/type/pfile.rb b/lib/puppet/type/pfile.rb
index 659889c06..4ae9cb97a 100644
--- a/lib/puppet/type/pfile.rb
+++ b/lib/puppet/type/pfile.rb
@@ -938,11 +938,14 @@ module Puppet
def handleignore(children)
@parameters[:ignore].each { |ignore|
- ignored = Dir.glob(File.join(self.name,ignore), File::FNM_DOTMATCH)
+ ignored = []
+ Dir.glob(File.join(self.name,ignore), File::FNM_DOTMATCH) { |match|
+ ignored.push(File.basename(match))
+ }
children = children - ignored
}
return children
- end
+ end
def initialize(hash)
# clean out as many references to any file paths as possible
@@ -1004,12 +1007,13 @@ module Puppet
end
def paramignore=(value)
-
+
#Make sure the value of ignore is in correct type
unless value.is_a?(Array) or value.is_a?(String)
raise Puppet::DevError.new("Ignore must be a string or an Array")
end
+ @parameters[:ignore] = value
end
def newchild(path, hash = {})
@@ -1166,12 +1170,12 @@ module Puppet
end
children = Dir.entries(self.name)
-
+
#Get rid of ignored children
if @parameters.include?(:ignore)
children = handleignore(children)
end
-
+
added = []
children.each { |file|
file = File.basename(file)
@@ -1213,10 +1217,10 @@ module Puppet
end
ignore = @parameters[:ignore]
-
+
#Puppet.warning "Listing path %s" % path.inspect
desc = server.list(path, r, ignore)
-
+
desc.split("\n").each { |line|
file, type = line.split("\t")
next if file == "/"