mirror of
https://github.com/OpenNebula/one.git
synced 2025-03-16 22:50:10 +03:00
upload_method for the client
git-svn-id: http://svn.opennebula.org/one/trunk@720 3034c82b-c49b-4eb3-8279-a7acafdc01c0
This commit is contained in:
parent
5f0b2e9472
commit
a40cdc4357
@ -33,3 +33,33 @@ base=EC2::Base.new(
|
||||
pp base.describe_instances
|
||||
|
||||
|
||||
|
||||
def upload_request (base, file_name=nil )
|
||||
params = {"Action" => "UploadImage",
|
||||
"SignatureVersion" => "2",
|
||||
"SignatureMethod" => 'HmacSHA1',
|
||||
"AWSAccessKeyId" => ACCESS_KEY_ID,
|
||||
"Version" => API_VERSION,
|
||||
"Timestamp"=>Time.now.getutc.iso8601}
|
||||
|
||||
#sig = base.get_aws_auth_param(params, SECRET_ACCESS_KEY, SERVER)
|
||||
|
||||
canonical_string = EC2.canonical_string(params, SERVER)
|
||||
sig = EC2.encode(SECRET_ACCESS_KEY, canonical_string, false)
|
||||
pp sig
|
||||
|
||||
post_fields = Array.new;
|
||||
|
||||
params.each { |k,v|
|
||||
post_fields << Curl::PostField.content(k,v)
|
||||
}
|
||||
|
||||
post_fields << Curl::PostField.content("Signature",sig)
|
||||
post_fields << Curl::PostField.file("file",file_name)
|
||||
|
||||
c = Curl::Easy.new("http://localhost:4567/")
|
||||
c.multipart_form_post = true
|
||||
c.http_post(*post_fields)
|
||||
#pp c.body_str
|
||||
end
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user