def find_image(glance, filters):
    """Find most recent image based on filters and ``version_name``.

    :param filters: Dictionary with Glance image properties to filter on
    :type filters: dict
    :returns: Glance image object
    """
    candidate = None
    for image in glance.images.list(filters=filters,
                                    sort_key='created_at',
                                    sort_dir='desc'):
            # glance does not offer ``version_name`` as a sort key.
            # iterate over result to make sure we get the most recent image.
        if not candidate or candidate.version_name < image.version_name:
            candidate = image
    return candidate