91: def initialize(hash = {})
92: @mounts = {}
93: @files = {}
94:
95: if hash[:Local]
96: @local = hash[:Local]
97: else
98: @local = false
99: end
100:
101: if hash[:Config] == false
102: @noreadconfig = true
103: end
104:
105: @passed_configuration_path = hash[:Config]
106:
107: if hash.include?(:Mount)
108: @passedconfig = true
109: unless hash[:Mount].is_a?(Hash)
110: raise Puppet::DevError, "Invalid mount hash %s" %
111: hash[:Mount].inspect
112: end
113:
114: hash[:Mount].each { |dir, name|
115: if FileTest.exists?(dir)
116: self.mount(dir, name)
117: end
118: }
119: self.mount(nil, MODULES)
120: self.mount(nil, PLUGINS)
121: else
122: @passedconfig = false
123: if configuration
124: readconfig(false)
125: else
126: create_default_mounts()
127: end
128: end
129: end