blob: 487bd043b4e22d6a5ba4d9793fd60a9804dd231e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
require 'puppet/file_serving/mount'
# Find files in the modules' plugins directories.
# This is a very strange mount because it merges
# many directories into one.
class Puppet::FileServing::Mount::Plugins < Puppet::FileServing::Mount
# Return an instance of the appropriate class.
def find(relative_path, options = {})
return nil unless mod = environment(options[:node]).modules.find { |mod| mod.plugin(relative_path) }
path = mod.plugin(relative_path)
return path
end
def search(relative_path, options = {})
# We currently only support one kind of search on plugins - return
# them all.
paths = environment(options[:node]).modules.find_all { |mod| mod.plugins? }.collect { |mod| mod.plugins }
return nil if paths.empty?
return paths
end
def valid?
true
end
end
|