# Break out the code related to plugins. This module is # just included into the agent, but having it here makes it # easier to test. require 'puppet/configurer' class Puppet::Configurer::PluginHandler def initialize(factory) @factory = factory end # Retrieve facts from the central server. def download_plugins(environment) plugin_downloader = @factory.create_plugin_downloader(environment) result = [] plugin_fact_downloader = @factory.create_plugin_facts_downloader(environment) result += plugin_fact_downloader.evaluate result += plugin_downloader.evaluate Puppet::Util::Autoload.reload_changed result end end