def get_dst_image(self, src_image_id):
        dst_glance = self.dst_cloud.resources[utils.IMAGE_RESOURCE]
        image = dst_glance.get_active_image_by_id(src_image_id)

        if image is None:
            src_glance = self.src_cloud.resources[utils.IMAGE_RESOURCE]
            src_image = src_glance.get_image_by_id(src_image_id)

            if src_image is None:
                # image does not exist in source cloud, will be recreated
                # from ephemeral
                return

            dst_tenant = keystone.get_dst_tenant_from_src_tenant_id(
                self.src_cloud.resources[utils.IDENTITY_RESOURCE],
                self.dst_cloud.resources[utils.IDENTITY_RESOURCE],
                src_image.owner)

            LOG.info("Image with ID '%s' was not found in destination cloud, "
                     "looking for images in tenant '%s' with checksum '%s', "
                     "name '%s' and size '%s'", src_image_id, dst_tenant.name,
                     src_image.checksum, src_image.name, src_image.size)
            image = dst_glance.get_active_image_with(
                dst_tenant.id,
                src_image.checksum,
                src_image.name,
                src_image.size)

        return image
Returns active image for VM. If not found, tries to match image
dataset/ETHPy150Open MirantisWorkloadMobility/CloudFerry/cloudferry/lib/os/actions/transport_instance.py/TransportInstance.get_dst_image