class FogClient
Attributes
access_key_id[R]
config[R]
secret_access_key[R]
type[R]
Public Class Methods
new(type, config)
click to toggle source
# File lib/fog-pry/fog_client.rb, line 6 def initialize(type, config) @type, @config = type, config creds = config.credentials @secret_access_key, @access_key_id = creds.secret_access_key, creds.access_key_id end
Public Instance Methods
compute()
click to toggle source
# File lib/fog-pry/fog_client.rb, line 63 def compute Fog::Compute.new(credentials(:compute)) end
credentials(op)
click to toggle source
# File lib/fog-pry/fog_client.rb, line 13 def credentials(op) if op == :elb || op == :iam return { :aws_secret_access_key=>secret_access_key, :aws_access_key_id=>access_key_id, :connection_options => { :ssl_verify_peer => false } }.merge(uri_params(op_endpoint(op))) end endpoint = op_endpoint(op) { :provider=>'AWS', :aws_secret_access_key=>secret_access_key, :aws_access_key_id=>access_key_id, :connection_options=>{:ssl_verify_peer=>false}.merge(uri_params(endpoint)) }.merge(endpoint_params(endpoint)) end
dns()
click to toggle source
# File lib/fog-pry/fog_client.rb, line 59 def dns Fog::DNS.new(credentials(:dns)) end
elb()
click to toggle source
# File lib/fog-pry/fog_client.rb, line 71 def elb Fog::AWS::ELB.new(credentials(:elb)) end
endpoint_params(url)
click to toggle source
# File lib/fog-pry/fog_client.rb, line 38 def endpoint_params(url) if url {:endpoint=>url} else {} end end
iam()
click to toggle source
# File lib/fog-pry/fog_client.rb, line 67 def iam Fog::AWS::IAM.new(credentials(:iam)) end
op_endpoint(op)
click to toggle source
# File lib/fog-pry/fog_client.rb, line 34 def op_endpoint(op) config.respond_to?(op) ? config.send(op) : nil end
uri_params(url)
click to toggle source
# File lib/fog-pry/fog_client.rb, line 46 def uri_params(url) if url uri = URI.parse url {:scheme => uri.scheme, :host => uri.host, :port => uri.port, :path => uri.path, } else {} end end