Skip to content

update_queue async

update_queue(
    farm_id: FarmId,
    queue_id: QueueId,
    *,
    config_overrides: Optional[AsyncdeadlineClientConfig] = None,
    client_token: Optional[ClientToken] = None,
    display_name: Optional[ResourceName] = None,
    description: Optional[Description] = None,
    default_budget_action: Optional[DefaultQueueBudgetAction] = None,
    job_attachment_settings: Optional[JobAttachmentSettings] = None,
    role_arn: Optional[IamRoleArn] = None,
    job_run_as_user: Optional[JobRunAsUser] = None,
    required_file_system_location_names_to_add: Optional[
        RequiredFileSystemLocationNames
    ] = None,
    required_file_system_location_names_to_remove: Optional[
        RequiredFileSystemLocationNames
    ] = None,
    allowed_storage_profile_ids_to_add: Optional[AllowedStorageProfileIds] = None,
    allowed_storage_profile_ids_to_remove: Optional[AllowedStorageProfileIds] = None,
    scheduling_configuration: Optional[SchedulingConfiguration] = None,
) -> UpdateQueueResponse

Updates a queue.

Parameters:

  • farm_id (FarmId) –

    The farm ID to update in the queue.

  • queue_id (QueueId) –

    The queue ID to update.

  • client_token (Optional[ClientToken], default: None ) –

    The idempotency token to update in the queue.

  • display_name (Optional[ResourceName], default: None ) –

    The display name of the queue to update.

    This field can store any content. Escape or encode this content before displaying it on a webpage or any other system that might interpret the content of this field.

  • description (Optional[Description], default: None ) –

    The description of the queue to update.

    This field can store any content. Escape or encode this content before displaying it on a webpage or any other system that might interpret the content of this field.

  • default_budget_action (Optional[DefaultQueueBudgetAction], default: None ) –

    The default action to take for a queue update if a budget isn't configured.

  • job_attachment_settings (Optional[JobAttachmentSettings], default: None ) –

    The job attachment settings to update for the queue.

  • role_arn (Optional[IamRoleArn], default: None ) –

    The IAM role ARN that's used to run jobs from this queue.

  • job_run_as_user (Optional[JobRunAsUser], default: None ) –

    Update the jobs in the queue to run as a specified POSIX user.

  • required_file_system_location_names_to_add (Optional[RequiredFileSystemLocationNames], default: None ) –

    The required file system location names to add to the queue.

  • required_file_system_location_names_to_remove (Optional[RequiredFileSystemLocationNames], default: None ) –

    The required file system location names to remove from the queue.

  • allowed_storage_profile_ids_to_add (Optional[AllowedStorageProfileIds], default: None ) –

    The storage profile IDs to add.

  • allowed_storage_profile_ids_to_remove (Optional[AllowedStorageProfileIds], default: None ) –

    The storage profile ID to remove.

  • scheduling_configuration (Optional[SchedulingConfiguration], default: None ) –

    The scheduling configuration for the queue. This configuration determines how workers are assigned to jobs in the queue.

    When updating the scheduling configuration, the entire configuration is replaced.

    In-progress tasks run to completion before the new scheduling configuration takes effect.

Raises:

Source code in docs_src/capo_deadline/_services/async_deadline.py
async def update_queue(
    self,
    farm_id: "capo_deadline.types.farm_id.FarmId",
    queue_id: "capo_deadline.types.queue_id.QueueId",
    *,
    config_overrides: Optional[AsyncdeadlineClientConfig] = None,
    client_token: Optional["capo_deadline.types.client_token.ClientToken"] = None,
    display_name: Optional["capo_deadline.types.resource_name.ResourceName"] = None,
    description: Optional["capo_deadline.types.description.Description"] = None,
    default_budget_action: Optional[
        "capo_deadline.types.default_queue_budget_action.DefaultQueueBudgetAction"
    ] = None,
    job_attachment_settings: Optional[
        "capo_deadline.types.job_attachment_settings.JobAttachmentSettings"
    ] = None,
    role_arn: Optional["capo_deadline.types.iam_role_arn.IamRoleArn"] = None,
    job_run_as_user: Optional[
        "capo_deadline.types.job_run_as_user.JobRunAsUser"
    ] = None,
    required_file_system_location_names_to_add: Optional[
        "capo_deadline.types.required_file_system_location_names.RequiredFileSystemLocationNames"
    ] = None,
    required_file_system_location_names_to_remove: Optional[
        "capo_deadline.types.required_file_system_location_names.RequiredFileSystemLocationNames"
    ] = None,
    allowed_storage_profile_ids_to_add: Optional[
        "capo_deadline.types.allowed_storage_profile_ids.AllowedStorageProfileIds"
    ] = None,
    allowed_storage_profile_ids_to_remove: Optional[
        "capo_deadline.types.allowed_storage_profile_ids.AllowedStorageProfileIds"
    ] = None,
    scheduling_configuration: Optional[
        "capo_deadline.types.scheduling_configuration.SchedulingConfiguration"
    ] = None,
) -> "capo_deadline.types.update_queue_response.UpdateQueueResponse":
    """<p>Updates a queue.</p>

    Args:
        farm_id: <p>The farm ID to update in the queue.</p>
        queue_id: <p>The queue ID to update.</p>
        client_token: <p>The idempotency token to update in the queue.</p>
        display_name: <p>The display name of the queue to update.</p> <important> <p>This field can store any content. Escape or encode this content before displaying it on a webpage or any other system that might interpret the content of this field.</p> </important>
        description: <p>The description of the queue to update.</p> <important> <p>This field can store any content. Escape or encode this content before displaying it on a webpage or any other system that might interpret the content of this field.</p> </important>
        default_budget_action: <p>The default action to take for a queue update if a budget isn't configured.</p>
        job_attachment_settings: <p>The job attachment settings to update for the queue.</p>
        role_arn: <p>The IAM role ARN that's used to run jobs from this queue.</p>
        job_run_as_user: <p>Update the jobs in the queue to run as a specified POSIX user.</p>
        required_file_system_location_names_to_add: <p>The required file system location names to add to the queue.</p>
        required_file_system_location_names_to_remove: <p>The required file system location names to remove from the queue.</p>
        allowed_storage_profile_ids_to_add: <p>The storage profile IDs to add.</p>
        allowed_storage_profile_ids_to_remove: <p>The storage profile ID to remove.</p>
        scheduling_configuration: <p>The scheduling configuration for the queue. This configuration determines how workers are assigned to jobs in the queue.</p> <p>When updating the scheduling configuration, the entire configuration is replaced.</p> <p>In-progress tasks run to completion before the new scheduling configuration takes effect.</p>

    Raises:
        capo_deadline.errors.access_denied_exception.AccessDeniedException: <p>You don't have permission to perform the action.</p>
        capo_deadline.errors.internal_server_error_exception.InternalServerErrorException: <p>Deadline Cloud can't process your request right now. Try again later.</p>
        capo_deadline.errors.resource_not_found_exception.ResourceNotFoundException: <p>The requested resource can't be found.</p>
        capo_deadline.errors.throttling_exception.ThrottlingException: <p>Your request exceeded a request rate quota.</p>
        capo_deadline.errors.validation_exception.ValidationException: <p>The request isn't valid. This can occur if your request contains malformed JSON or unsupported characters.</p>
        capo_deadline.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_deadline.types.update_queue_request.UpdateQueueRequest]",
    ) -> AsyncOperationResponse[
        "capo_deadline.types.update_queue_response.UpdateQueueResponse"
    ]:
        import capo_deadline._operations.deadline.update_queue

        (
            output,
            http_response,
        ) = await capo_deadline._operations.deadline.update_queue.async_update_queue(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    def _redact_input(
        input_: "capo_deadline.types.update_queue_request.UpdateQueueRequest",
    ) -> dict[str, Any]:
        import capo_deadline.types.update_queue_request

        return capo_deadline.types.update_queue_request.redact_sensitive(input_)

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging("UpdateQueue", redact_input=_redact_input),
    )
    input_: capo_deadline.types.update_queue_request.UpdateQueueRequest = {
        "farm_id": farm_id,
        "queue_id": queue_id,
    }
    if client_token is None:
        client_token = str(uuid.uuid4())
    input_["client_token"] = client_token
    if display_name is not None:
        input_["display_name"] = display_name
    if description is not None:
        input_["description"] = description
    if default_budget_action is not None:
        input_["default_budget_action"] = default_budget_action
    if job_attachment_settings is not None:
        input_["job_attachment_settings"] = job_attachment_settings
    if role_arn is not None:
        input_["role_arn"] = role_arn
    if job_run_as_user is not None:
        input_["job_run_as_user"] = job_run_as_user
    if required_file_system_location_names_to_add is not None:
        input_["required_file_system_location_names_to_add"] = (
            required_file_system_location_names_to_add
        )
    if required_file_system_location_names_to_remove is not None:
        input_["required_file_system_location_names_to_remove"] = (
            required_file_system_location_names_to_remove
        )
    if allowed_storage_profile_ids_to_add is not None:
        input_["allowed_storage_profile_ids_to_add"] = (
            allowed_storage_profile_ids_to_add
        )
    if allowed_storage_profile_ids_to_remove is not None:
        input_["allowed_storage_profile_ids_to_remove"] = (
            allowed_storage_profile_ids_to_remove
        )
    if scheduling_configuration is not None:
        input_["scheduling_configuration"] = scheduling_configuration

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