Esempio n. 1
0
 def _options_from_req(self, req) -> ListApiOptions:
     """Obtain `ListApiOptions` from the aiohttp request."""
     limit = int(req.query.get("limit"))
     # Only apply 80% of the timeout so that
     # the API will reply before client times out if query to the source fails.
     timeout = int(req.query.get("timeout"))
     return ListApiOptions(limit=limit, timeout=timeout)
Esempio n. 2
0
def test_dashboard_requests_fail_on_missing_deps(ray_start_with_dashboard):
    """Check that requests from client fail with minimal installation"""
    response = None

    with pytest.raises(ServerUnavailable):
        client = StateApiClient(address=DEFAULT_DASHBOARD_ADDRESS)
        response = client.list(StateResource.NODES, options=ListApiOptions())

    # Response should not be populated
    assert response is None
Esempio n. 3
0
def create_api_options(
    timeout: int = DEFAULT_RPC_TIMEOUT,
    limit: int = DEFAULT_LIMIT,
    filters: List[Tuple[str, SupportedFilterType]] = None,
):
    if not filters:
        filters = []
    return ListApiOptions(limit=limit,
                          timeout=timeout,
                          filters=filters,
                          _server_timeout_multiplier=1.0)
Esempio n. 4
0
File: api.py Progetto: tchordia/ray
def list_nodes(
    api_server_url: str = None,
    limit: int = DEFAULT_LIMIT,
    timeout: int = DEFAULT_RPC_TIMEOUT,
    _explain: bool = False,
):
    return _list(
        "nodes",
        ListApiOptions(limit=limit, timeout=timeout),
        api_server_url=api_server_url,
        _explain=_explain,
    )
Esempio n. 5
0
File: api.py Progetto: parasj/ray
def list_placement_groups(
    address: Optional[str] = None,
    filters: Optional[List[Tuple[str, PredicateType,
                                 SupportedFilterType]]] = None,
    limit: int = DEFAULT_LIMIT,
    timeout: int = DEFAULT_RPC_TIMEOUT,
    detail: bool = False,
    _explain: bool = False,
):
    return StateApiClient(address=address).list(
        StateResource.PLACEMENT_GROUPS,
        options=ListApiOptions(limit=limit,
                               timeout=timeout,
                               filters=filters,
                               detail=detail),
        _explain=_explain,
    )
Esempio n. 6
0
    def _options_from_req(self, req: aiohttp.web.Request) -> ListApiOptions:
        """Obtain `ListApiOptions` from the aiohttp request."""
        limit = int(
            req.query.get("limit") if req.query.
            get("limit") is not None else DEFAULT_LIMIT)
        timeout = int(req.query.get("timeout"))
        filter_keys = req.query.getall("filter_keys", [])
        filter_predicates = req.query.getall("filter_predicates", [])
        filter_values = req.query.getall("filter_values", [])
        assert len(filter_keys) == len(filter_values)
        filters = []
        for key, predicate, val in zip(filter_keys, filter_predicates,
                                       filter_values):
            filters.append((key, predicate, val))
        detail = convert_string_to_type(req.query.get("detail", False), bool)

        return ListApiOptions(limit=limit,
                              timeout=timeout,
                              filters=filters,
                              detail=detail)
Esempio n. 7
0
def list_api_options(timeout: int = DEFAULT_RPC_TIMEOUT,
                     limit: int = DEFAULT_LIMIT):
    return ListApiOptions(limit=limit,
                          timeout=timeout,
                          _server_timeout_multiplier=1.0)