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