Skip to content

get_queue async

get_queue(
    cluster_identifier: ClusterIdentifier,
    queue_identifier: QueueIdentifier,
    *,
    config_overrides: Optional[AsyncPCSClientConfig] = None,
) -> GetQueueResponse

Returns detailed information about a queue. The information includes the compute node groups that the queue uses to schedule jobs.

Parameters:

Raises:

  • AccessDeniedException –

    You don't have permission to perform the action.

    Examples

    • The launch template instance profile doesn't pass iam:PassRole verification.

    • There is a mismatch between the account ID and cluster ID.

    • The cluster ID doesn't exist.

    • The EC2 instance isn't present.

  • ConflictException –

    Your request has conflicting operations. This can occur if you're trying to perform more than 1 operation on the same resource at the same time.

    Examples

    • A cluster with the same name already exists.

    • A cluster isn't in ACTIVE status.

    • A cluster to delete is in an unstable state. For example, because it still has ACTIVE node groups or queues.

    • A queue already exists in a cluster.

  • InternalServerException –

    PCS can't process your request right now. Try again later.

  • ResourceNotFoundException –

    The requested resource can't be found. The cluster, node group, or queue you're attempting to get, update, list, or delete doesn't exist.

    Examples

  • ThrottlingException –

    Your request exceeded a request rate quota. Check the resource's request rate quota and try again.

  • ValidationException –

    The request isn't valid.

    Examples

    • Your request contains malformed JSON or unsupported characters.

    • The scheduler version isn't supported.

    • There are networking related errors, such as network validation failure.

    • AMI type is CUSTOM and the launch template doesn't define the AMI ID, or the AMI type is AL2 and the launch template defines the AMI.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_pcs/_services/async_pcs.py
async def get_queue(
    self,
    cluster_identifier: "capo_pcs.types.cluster_identifier.ClusterIdentifier",
    queue_identifier: "capo_pcs.types.queue_identifier.QueueIdentifier",
    *,
    config_overrides: Optional[AsyncPCSClientConfig] = None,
) -> "capo_pcs.types.get_queue_response.GetQueueResponse":
    """<p>Returns detailed information about a queue. The information includes the compute node groups that the queue uses to schedule jobs.</p>

    Args:
        cluster_identifier: <p>The name or ID of the cluster of the queue.</p>
        queue_identifier: <p>The name or ID of the queue.</p>

    Raises:
        capo_pcs.errors.access_denied_exception.AccessDeniedException: <p>You don't have permission to perform the action.</p> <p> <u>Examples</u> </p> <ul> <li> <p>The launch template instance profile doesn't pass <code>iam:PassRole</code> verification.</p> </li> <li> <p>There is a mismatch between the account ID and cluster ID.</p> </li> <li> <p>The cluster ID doesn't exist.</p> </li> <li> <p>The EC2 instance isn't present.</p> </li> </ul>
        capo_pcs.errors.conflict_exception.ConflictException: <p>Your request has conflicting operations. This can occur if you're trying to perform more than 1 operation on the same resource at the same time.</p> <p> <u>Examples</u> </p> <ul> <li> <p>A cluster with the same name already exists.</p> </li> <li> <p>A cluster isn't in <code>ACTIVE</code> status.</p> </li> <li> <p>A cluster to delete is in an unstable state. For example, because it still has <code>ACTIVE</code> node groups or queues.</p> </li> <li> <p>A queue already exists in a cluster.</p> </li> </ul>
        capo_pcs.errors.internal_server_exception.InternalServerException: <p>PCS can't process your request right now. Try again later.</p>
        capo_pcs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The requested resource can't be found. The cluster, node group, or queue you're attempting to get, update, list, or delete doesn't exist.</p> <p> <u>Examples</u> </p>
        capo_pcs.errors.throttling_exception.ThrottlingException: <p>Your request exceeded a request rate quota. Check the resource's request rate quota and try again.</p>
        capo_pcs.errors.validation_exception.ValidationException: <p>The request isn't valid.</p> <p> <u>Examples</u> </p> <ul> <li> <p>Your request contains malformed JSON or unsupported characters.</p> </li> <li> <p>The scheduler version isn't supported.</p> </li> <li> <p>There are networking related errors, such as network validation failure.</p> </li> <li> <p>AMI type is <code>CUSTOM</code> and the launch template doesn't define the AMI ID, or the AMI type is AL2 and the launch template defines the AMI.</p> </li> </ul>
        capo_pcs.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_pcs.types.get_queue_request.GetQueueRequest]",
    ) -> AsyncOperationResponse[
        "capo_pcs.types.get_queue_response.GetQueueResponse"
    ]:
        import capo_pcs._operations.aws_parallel_computing_service.get_queue

        (
            output,
            http_response,
        ) = await capo_pcs._operations.aws_parallel_computing_service.get_queue.async_get_queue(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("GetQueue")
    )
    input_: capo_pcs.types.get_queue_request.GetQueueRequest = {
        "cluster_identifier": cluster_identifier,
        "queue_identifier": queue_identifier,
    }

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output