lib/system_builder/configurator.rb in system-builder-0.0.7 vs lib/system_builder/configurator.rb in system-builder-0.0.9

- old
+ new

@@ -12,14 +12,15 @@ end class PuppetConfigurator - attr_reader :manifest + attr_reader :manifest, :config - def initialize(manifest = ".") - @manifest = manifest + def initialize(options = {}) + @manifest = (options.delete(:manifest) or ".") + @config = options.dup end def puppet_directories %w{manifests files modules templates plugins}.collect { |d| "#{manifest}/#{d}" }.select { |d| File.directory?(d) } end @@ -39,9 +40,15 @@ else context_dir = "/tmp/puppet" chroot.image.mkdir context_dir chroot.image.rsync context_dir, puppet_directories, :exclude => "*~", :delete => true + + chroot.image.open("#{context_dir}/manifests/config.pp") do |f| + config.each do |key, value| + f.puts "$#{key}=\"#{value}\"" + end + end chroot.image.mkdir "#{context_dir}/config" chroot.image.open("#{context_dir}/config/fileserver.conf") do |f| %w{files plugins}.each do |mount_point| f.puts "[#{mount_point}]"