← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 962046] Re: EC2 metadata retrieval fails with spaces in a resource name

 

This bug was fixed in the package python-boto - 2.3.0-1ubuntu0.12.10.1

---------------
python-boto (2.3.0-1ubuntu0.12.10.1) quantal; urgency=low

  * Fix failures when there are spaces in a resource name. (LP: #962046)
 -- Chris J Arges <chris.j.arges@xxxxxxxxxxxxx>   Fri, 08 Feb 2013 09:50:51 -0600

** Changed in: python-boto (Ubuntu Quantal)
       Status: Fix Committed => Fix Released

** Changed in: python-boto (Ubuntu Precise)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to cloud-init.
https://bugs.launchpad.net/bugs/962046

Title:
  EC2 metadata retrieval fails with spaces in a resource name

Status in Init scripts for use on cloud images:
  Invalid
Status in “python-boto” package in Ubuntu:
  Fix Released
Status in “python-boto” source package in Precise:
  Fix Released
Status in “python-boto” source package in Quantal:
  Fix Released
Status in “python-boto” source package in Raring:
  Fix Released

Bug description:
  [Impact]

  Example when using a key name 'my key':

  Caught exception reading instance data:
  http://169.254.169.254/2009-04-04/meta-data/mpi/my key

  Is a boto issue, see https://github.com/boto/boto/issues/659

  Patches provided for Precise, Quantal and Raring. Fix already exists
  in Saucy.

  [Test Case]

  There are two ways to test this. The first provides that the change will affect
  the url in the required manner but does not test the package. The second will
  test the package but needs to be run within an Openstack instance against an
  API that has calls with spaces on their name.

  ====
  #!/usr/bin/env python
  import urllib

  resource = "http://169.254.169.254/2009-04-04/meta-data/i love spaces"
  print "unsafe: %s" % resource

  resource = urllib.quote(resource, safe="/:")
  print "safe: %s" % resource

  ===
  #!/usr/bin/env python
  from boto import utils
  utils.get_instance_metadata()

  [Regression Potential]

  This is a very low risk change which makes any non-alphnumeric
  characters in a meta api call name safe for urlib. It is unlikely that
  an api call name would have anything other than alphanumeric chars,
  whitespace and perhaps '_' but even if they did they would be safe
  here so there is no known regression potential.

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-init/+bug/962046/+subscriptions