Class: KnifeArtifactory::Utils

Inherits:
Object
  • Object
show all
Defined in:
lib/knife-artifactory/utils.rb

Class Method Summary collapse

Class Method Details

.auth_header_from(uri) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/knife-artifactory/utils.rb', line 6

def self.auth_header_from(uri)
  Chef::Log.debug("[KNIFE-ART] in util, got url: #{uri}")
  begin
    url = URI.parse(uri.gsub(%r{/+$}, ""))
    Chef::Log.debug("[KNIFE-ART] in util, parsed url: #{uri}")
    if url.user && url.password
      user = URI.unescape(url.user)
      password = URI.unescape(url.password)
      return { "Authorization" => "Basic " + Base64.strict_encode64("#{user}:#{password}") }
    end
    {}
  end
rescue Exception => e
  Chef::Log.warn("[KNIFE-ART] Unable to parse url: #{uri} --> #{e.message}")
  {}
end