Here is where the error occurs. It retrieves the overlay package from the URL you specify, gets the metadata and unpacks it, and looks for the hash of the base VM. If it can't find a matching hash, then it reports this error.
from elijah.provisioning.package import VMOverlayPackage
matching_image = None
requested_basevm_sha256 = ''
overlay_package = VMOverlayPackage(overlay_url)
metadata = overlay_package.read_meta()
overlay_meta = msgpack.unpackb(metadata)
requested_basevm_sha256 = overlay_meta.get(Cloudlet_Const.META_BASE_VM_SHA256, None)
matching_image = find_basevm_by_sha256(self.request, requested_basevm_sha256)
except Exception as e:
msg = "Error while finding matching Base VM with %s" % (requested_basevm_sha256)
If you do
cloudlet synthesis <base> <overlay> with the same base image and overlay.zip you tried from the OpenStack dashboard does it give you a similar error?
You might also look at the Glance log files (/var/log/glance/*.log) to see if perhaps there is an unrelated error that is causing the Glance service to behave poorly. If glance were down or otherwise malfunctioning, I believe the lookup for the matching base VM would fail and this error would surface.