lib/gemirro/http.rb in gemirro-1.3.0 vs lib/gemirro/http.rb in gemirro-1.4.0

- old
+ new

@@ -27,9 +27,36 @@ ## # @return [HTTPClient] # def self.client - @client ||= HTTPClient.new + client ||= HTTPClient.new + config = Utils.configuration + if defined?(config.upstream_user) + user = config.upstream_user + password = config.upstream_password + domain = config.upstream_domain + client.set_auth(domain, user, password) + end + + if defined?(config.proxy) + proxy = config.proxy + client.proxy=(proxy) + end + + # Use my own ca file for self signed cert + if defined?(config.rootca) + abort "The configuration file #{config.rootca} does not exist" unless File.file?(config.rootca) + client.ssl_config.verify_mode = OpenSSL::SSL::VERIFY_PEER + client.ssl_config.set_trust_ca(config.rootca) + elsif defined?(config.verify_mode) + client.ssl_config.verify_mode = OpenSSL::SSL::VERIFY_NONE unless config.verify_mode + end + + # Enforce base auth + if defined?(config.basic_auth) + client.force_basic_auth=(true) if config.basic_auth + end + @client = client end end end