Actually, I'd suggest: ENV['EC2_URL'] = nil ENV['S3_URL'] = nil. AWS overrides :endpoint_url if the environmental variables are set. The typical eucalyptus installation will have the two env. variables set to Eucalyptus/Walrus backend. If a Eucalyptus user starts deltacloud process and if she switches to EC2 driver, AWS will attempt to connect Eucalyptus backend.
If we set them nil, AWS will use the default endpoint for EC2 or the one set through EC2 provider. I tested and confirmed it works. Sang-min On Mon, Apr 18, 2011 at 3:35 PM, <[email protected]> wrote: > From: David Lutterkort <[email protected]> > > Setting these variables to the empty string caused the aws gem to issue > invalid signatures on requests. > > This issue was introduced in commit b8e725c6 > --- > server/lib/deltacloud/drivers/ec2/ec2_driver.rb | 2 -- > 1 files changed, 0 insertions(+), 2 deletions(-) > > diff --git a/server/lib/deltacloud/drivers/ec2/ec2_driver.rb > b/server/lib/deltacloud/drivers/ec2/ec2_driver.rb > index dd67422..83054c2 100644 > --- a/server/lib/deltacloud/drivers/ec2/ec2_driver.rb > +++ b/server/lib/deltacloud/drivers/ec2/ec2_driver.rb > @@ -537,8 +537,6 @@ module Deltacloud > end > > def endpoint_for_service(service) > - ENV['EC2_URL']='' # unset endpoints that may have been set by > eucalyptus; otherwise it can conflict with the EC2/S3 endpoints in aws gem. > - ENV['S3_URL']='' > endpoint = (Thread.current[:provider] || ENV['API_PROVIDER'] || > DEFAULT_REGION) > # return the endpoint if it does not map to a default endpoint, > allowing > # the endpoint to be a full hostname instead of a region. > -- > 1.7.4.4 > >
