def get_host_by_id(host_id_list,
                   page=1,
                   per_page=100,
                   order_by=None,
                   order_how=None,
                   staleness=None):
    query = _get_host_list_by_id_list(current_identity.account_number,
                                      host_id_list)

    # The staleness check is currently disabled when getting a single host by id
    # to ease onboarding (RHCLOUD-3562)
    # if staleness:
    #     query = find_hosts_by_staleness(staleness, query)

    try:
        order_by = params_to_order_by(order_by, order_how)
    except ValueError as e:
        flask.abort(400, str(e))
    else:
        query = query.order_by(*order_by)
    query_results = query.paginate(page, per_page, True)

    logger.debug("Found hosts: %s", query_results.items)

    json_data = build_paginated_host_list_response(query_results.total, page,
                                                   per_page,
                                                   query_results.items)
    return flask_json_response(json_data)
def get_host_list(
    display_name=None,
    fqdn=None,
    hostname_or_id=None,
    insights_id=None,
    tags=None,
    page=1,
    per_page=100,
    order_by=None,
    order_how=None,
    staleness=None,
):
    total = 0
    host_list = ()

    bulk_query_source = get_bulk_query_source()

    get_host_list = GET_HOST_LIST_FUNCTIONS[bulk_query_source]

    try:
        host_list, total = get_host_list(display_name, fqdn, hostname_or_id,
                                         insights_id, tags, page, per_page,
                                         order_by, order_how, staleness)
    except ValueError as e:
        flask.abort(400, str(e))

    json_data = build_paginated_host_list_response(total, page, per_page,
                                                   host_list)
    return flask_json_response(json_data)
def get_host_list(
    display_name=None,
    fqdn=None,
    hostname_or_id=None,
    insights_id=None,
    provider_id=None,
    provider_type=None,
    tags=None,
    page=1,
    per_page=100,
    order_by=None,
    order_how=None,
    staleness=None,
    registered_with=None,
    filter=None,
    fields=None,
):

    total = 0
    host_list = ()

    bulk_query_source = get_bulk_query_source()

    get_host_list = GET_HOST_LIST_FUNCTIONS[bulk_query_source]

    try:
        host_list, total, additional_fields = get_host_list(
            display_name,
            fqdn,
            hostname_or_id,
            insights_id,
            provider_id,
            provider_type,
            tags,
            page,
            per_page,
            order_by,
            order_how,
            staleness,
            registered_with,
            filter,
            fields,
        )
    except ValueError as e:
        log_get_host_list_failed(logger)
        flask.abort(400, str(e))

    json_data = build_paginated_host_list_response(total, page, per_page,
                                                   host_list,
                                                   additional_fields)
    return flask_json_response(json_data)
Example #4
0
def get_host_by_id(host_id_list, page=1, per_page=100, order_by=None, order_how=None):
    query = _get_host_list_by_id_list(current_identity.account_number, host_id_list)

    try:
        order_by = params_to_order_by(order_by, order_how)
    except ValueError as e:
        flask.abort(400, str(e))
    else:
        query = query.order_by(*order_by)
    query_results = query.paginate(page, per_page, True)

    logger.debug("Found hosts: %s", query_results.items)

    json_data = build_paginated_host_list_response(query_results.total, page, per_page, query_results.items)
    return flask_json_response(json_data)
Example #5
0
def get_host_by_id(host_id_list,
                   page=1,
                   per_page=100,
                   order_by=None,
                   order_how=None):
    query = _get_host_list_by_id_list(host_id_list)

    try:
        order_by = params_to_order_by(order_by, order_how)
    except ValueError as e:
        flask.abort(400, str(e))
    else:
        query = query.order_by(*order_by)
    query_results = query.paginate(page, per_page, True)

    log_get_host_list_succeeded(logger, query_results.items)

    json_data = build_paginated_host_list_response(query_results.total, page,
                                                   per_page,
                                                   query_results.items)
    return flask_json_response(json_data)