class Puppet::Configurer::PluginHandler
Constants
- SUPPORTED_LOCALES_MOUNT_AGENT_VERSION
Public Instance Methods
download_plugins(environment)
click to toggle source
# File lib/puppet/configurer/plugin_handler.rb 9 def download_plugins(environment) 10 source_permissions = Puppet::Util::Platform.windows? ? :ignore : :use 11 12 plugin_downloader = Puppet::Configurer::Downloader.new( 13 "plugin", 14 Puppet[:plugindest], 15 Puppet[:pluginsource], 16 Puppet[:pluginsignore], 17 environment 18 ) 19 plugin_fact_downloader = Puppet::Configurer::Downloader.new( 20 "pluginfacts", 21 Puppet[:pluginfactdest], 22 Puppet[:pluginfactsource], 23 Puppet[:pluginsignore], 24 environment, 25 source_permissions 26 ) 27 28 result = [] 29 result += plugin_fact_downloader.evaluate 30 result += plugin_downloader.evaluate 31 32 unless Puppet[:disable_i18n] 33 # until file metadata/content are using the rest client, we need to check 34 # both :server_agent_version and the session to see if the server supports 35 # the "locales" mount 36 server_agent_version = Puppet.lookup(:server_agent_version) { "0.0" } 37 locales = Gem::Version.new(server_agent_version) >= SUPPORTED_LOCALES_MOUNT_AGENT_VERSION 38 unless locales 39 session = Puppet.lookup(:http_session) 40 locales = session.supports?(:fileserver, 'locales') || session.supports?(:puppet, 'locales') 41 end 42 43 if locales 44 locales_downloader = Puppet::Configurer::Downloader.new( 45 "locales", 46 Puppet[:localedest], 47 Puppet[:localesource], 48 Puppet[:pluginsignore] + " *.pot config.yaml", 49 environment 50 ) 51 result += locales_downloader.evaluate 52 end 53 end 54 55 Puppet::Util::Autoload.reload_changed(Puppet.lookup(:current_environment)) 56 57 result 58 end