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)
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
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)
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, )
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, )
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)
def list_api_options(timeout: int = DEFAULT_RPC_TIMEOUT, limit: int = DEFAULT_LIMIT): return ListApiOptions(limit=limit, timeout=timeout, _server_timeout_multiplier=1.0)