diff --git a/src/cloud/ec2/lib/instance.rb b/src/cloud/ec2/lib/instance.rb index f993f7596f..d8fdfec12e 100644 --- a/src/cloud/ec2/lib/instance.rb +++ b/src/cloud/ec2/lib/instance.rb @@ -65,6 +65,13 @@ module Instance img = nil if params['ImageId'] =~ /ami\-(.+)/ img = $1 + image = ImageEC2.new(Image.build_xml(img), @client) + rc = image.info + if OpenNebula.is_error?(rc) || !image.ec2_ami? + rc ||= OpenNebula::Error.new() + rc.ec2_code = "InvalidAMIID.NotFound" + return rc + end else rc = OpenNebula::Error.new("InvalidAMIID.Malformed #{params['ImageId']}") rc.ec2_code = "InvalidAMIID.Malformed"