Changing the class to return a string rather than a dictionary avoids
the cloud-init explosion. That runs counter to all the documentation
that says "use JSON", but it's the workaround we'll use for now
(serializing to YAML).
--
You received this bug notification because you are a member of Ubunt
Screwed up the above script, it should be
from nova.api.metadata import base
class CustomVendordata(base.VendorDataDriver):
def __init__(self, *args, **kwargs):
super(CustomVendordata, self).__init__(*args, **kwargs)
def get(self):
return {"msg": "", "uuid": "4996e2b67d29
Just doing something simple like
data = str(util.decomp_gzip(raw_data))
causes it to work, because data's now a string and hashable and so the
range data[0:4096] works (whether the content is actually what it's
supposed to be is another question).
--
You received this bug notification because y
I can reliably reproduce this issue via the following steps:
1) Create blah.py under nova/api/metadata/ with these contents:
from nova.api.metadata import base
class CustomVendordata(base.VendorDataDriver):
def __init__(self, *args, **kwargs):
super(BcpcMetadata, self).__init__(*args