Sha256: d96b1cc8f36e1eece81e3b9cf73d22a338f2521085166772e4a568002b63855b
Contents?: true
Size: 846 Bytes
Versions: 3
Compression:
Stored size: 846 Bytes
Contents
require 'fog/core' require 'uri' module Fog module Cloudstack extend Fog::Provider service(:compute, 'Compute') @@digest = OpenSSL::Digest.new('sha1') def self.escape(string) string = CGI::escape(string) string = string.gsub("+","%20") string end def self.signed_params(key,params) query = params.map{|k,v| [k.to_s, v]}.sort.collect{|c| "#{c[0]}=#{escape(c[1].to_s)}"}.join('&').downcase signed_string = Base64.encode64(OpenSSL::HMAC.digest(@@digest,key,query)).strip signed_string end def self.uuid [8,4,4,4,12].map{|i| Fog::Mock.random_hex(i)}.join("-") end def self.ip_address 4.times.map{ Fog::Mock.random_numbers(3) }.join(".") end def self.mac_address 6.times.map{ Fog::Mock.random_numbers(2) }.join(":") end end end
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
fog-maestrodev-1.20.0.20140305101839 | lib/fog/cloudstack/core.rb |
fog-maestrodev-1.20.0.20140305101305 | lib/fog/cloudstack/core.rb |
fog-1.20.0 | lib/fog/cloudstack/core.rb |