Project

General

Profile

Download (2.12 KB) Statistics
| Branch: | Tag: | Revision:
module ::Proxy::PuppetApi
class PluginConfiguration
def load_programmable_settings(settings)
settings[:classes_retriever] = :apiv3
settings[:environments_retriever] = :apiv3
settings
end

def load_classes
require 'puppet_proxy_common/errors'
require 'puppet_proxy_common/environments_retriever_base'
require 'puppet_proxy_common/environment'
require 'puppet_proxy_common/puppet_class'
require 'puppet_proxy_common/api_request'
require 'puppet_proxy_puppet_api/v3_api_request'
require 'puppet_proxy_puppet_api/v3_environments_retriever'
require 'puppet_proxy_puppet_api/v3_environment_classes_api_classes_retriever'
end

def load_dependency_injection_wirings(container_instance, settings)
container_instance.dependency :environment_retriever_impl,
-> { ::Proxy::PuppetApi::V3EnvironmentsRetriever.new(settings[:puppet_url], settings[:puppet_ssl_ca], settings[:puppet_ssl_cert], settings[:puppet_ssl_key]) }

container_instance.singleton_dependency :class_retriever_impl,
(lambda do
::Proxy::PuppetApi::V3EnvironmentClassesApiClassesRetriever.new(
settings[:puppet_url],
settings[:puppet_ssl_ca],
settings[:puppet_ssl_cert],
settings[:puppet_ssl_key],
settings[:api_timeout])
end)
container_instance.dependency :class_cache_initializer,
(lambda do
Proxy::PuppetApi::EnvironmentClassesCacheInitializer.new(
container_instance.get_dependency(:class_retriever_impl),
container_instance.get_dependency(:environment_retriever_impl))
end)
end
end
end
(1-1/6)