lib/modulesync.rb in modulesync-0.2.0 vs lib/modulesync.rb in modulesync-0.3.0

- old
+ new

@@ -51,18 +51,21 @@ local_files = self.local_files(path) module_files = self.module_files(local_files, path) managed_modules = self.managed_modules("#{options[:configs]}/managed_modules.yml", options[:filter]) - managed_modules.each do |puppet_module| + # managed_modules is either an array or a hash + managed_modules.each do |puppet_module, opts| puts "Syncing #{puppet_module}" - Git.pull(options[:git_user], options[:git_provider_address], options[:namespace], puppet_module) + git_base = "#{options[:git_base]}#{options[:namespace]}" + Git.pull(git_base, puppet_module, options[:branch], opts || {}) module_configs = Util.parse_config("#{PROJ_ROOT}/#{puppet_module}/#{MODULE_CONF_FILE}") files_to_manage = module_files | defaults.keys | module_configs.keys files_to_delete = [] files_to_manage.each do |file| file_configs = (defaults[file] || {}).merge(module_configs[file] || {}) + file_configs[:puppet_module] = puppet_module if file_configs['unmanaged'] puts "Not managing #{file} in #{puppet_module}" files_to_delete << file elsif file_configs['delete'] Renderer.remove(module_file(puppet_module, file)) @@ -72,12 +75,12 @@ Renderer.sync(template, "#{PROJ_ROOT}/#{puppet_module}/#{file}") end end files_to_manage -= files_to_delete if options[:noop] - Git.update_noop(puppet_module, options[:branch]) + Git.update_noop(puppet_module, options) else - Git.update(puppet_module, files_to_manage, options[:message], options[:branch]) + Git.update(puppet_module, files_to_manage, options) end end elsif options[:command] == 'hook' Hook.hook(args[1], options) end