Skip to content

put_source_server_action async

put_source_server_action(
    source_server_id: SourceServerID,
    action_name: ActionName,
    document_identifier: BoundedString,
    order: OrderType,
    action_id: ActionID,
    *,
    config_overrides: Optional[AsyncmgnClientConfig] = None,
    document_version: Optional[DocumentVersion] = None,
    active: Optional[bool] = None,
    timeout_seconds: Optional[StrictlyPositiveInteger] = None,
    must_succeed_for_cutover: Optional[bool] = None,
    parameters: Optional[SsmDocumentParameters] = None,
    external_parameters: Optional[SsmDocumentExternalParameters] = None,
    description: Optional[ActionDescription] = None,
    category: Optional[ActionCategory] = None,
    account_id: Optional[AccountID] = None,
) -> SourceServerActionDocument

Put source server post migration custom action.

Parameters:

  • source_server_id (SourceServerID) –

    Source server ID.

  • action_name (ActionName) –

    Source server post migration custom action name.

  • document_identifier (BoundedString) –

    Source server post migration custom action document identifier.

  • order (OrderType) –

    Source server post migration custom action order.

  • action_id (ActionID) –

    Source server post migration custom action ID.

  • document_version (Optional[DocumentVersion], default: None ) –

    Source server post migration custom action document version.

  • active (Optional[bool], default: None ) –

    Source server post migration custom action active status.

  • timeout_seconds (Optional[StrictlyPositiveInteger], default: None ) –

    Source server post migration custom action timeout in seconds.

  • must_succeed_for_cutover (Optional[bool], default: None ) –

    Source server post migration custom action must succeed for cutover.

  • parameters (Optional[SsmDocumentParameters], default: None ) –

    Source server post migration custom action parameters.

  • external_parameters (Optional[SsmDocumentExternalParameters], default: None ) –

    Source server post migration custom action external parameters.

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

    Source server post migration custom action description.

  • category (Optional[ActionCategory], default: None ) –

    Source server post migration custom action category.

  • account_id (Optional[AccountID], default: None ) –

    Source server post migration custom account ID.

Raises:

Source code in docs_src/capo_mgn/_services/async_mgn.py
async def put_source_server_action(
    self,
    source_server_id: "capo_mgn.types.source_server_id.SourceServerID",
    action_name: "capo_mgn.types.action_name.ActionName",
    document_identifier: "capo_mgn.types.bounded_string.BoundedString",
    order: "capo_mgn.types.order_type.OrderType",
    action_id: "capo_mgn.types.action_id.ActionID",
    *,
    config_overrides: Optional[AsyncmgnClientConfig] = None,
    document_version: Optional[
        "capo_mgn.types.document_version.DocumentVersion"
    ] = None,
    active: Optional[bool] = None,
    timeout_seconds: Optional[
        "capo_mgn.types.strictly_positive_integer.StrictlyPositiveInteger"
    ] = None,
    must_succeed_for_cutover: Optional[bool] = None,
    parameters: Optional[
        "capo_mgn.types.ssm_document_parameters.SsmDocumentParameters"
    ] = None,
    external_parameters: Optional[
        "capo_mgn.types.ssm_document_external_parameters.SsmDocumentExternalParameters"
    ] = None,
    description: Optional[
        "capo_mgn.types.action_description.ActionDescription"
    ] = None,
    category: Optional["capo_mgn.types.action_category.ActionCategory"] = None,
    account_id: Optional["capo_mgn.types.account_id.AccountID"] = None,
) -> "capo_mgn.types.source_server_action_document.SourceServerActionDocument":
    """<p>Put source server post migration custom action.</p>

    Args:
        source_server_id: <p>Source server ID.</p>
        action_name: <p>Source server post migration custom action name.</p>
        document_identifier: <p>Source server post migration custom action document identifier.</p>
        order: <p>Source server post migration custom action order.</p>
        action_id: <p>Source server post migration custom action ID.</p>
        document_version: <p>Source server post migration custom action document version.</p>
        active: <p>Source server post migration custom action active status.</p>
        timeout_seconds: <p>Source server post migration custom action timeout in seconds.</p>
        must_succeed_for_cutover: <p>Source server post migration custom action must succeed for cutover.</p>
        parameters: <p>Source server post migration custom action parameters.</p>
        external_parameters: <p>Source server post migration custom action external parameters.</p>
        description: <p>Source server post migration custom action description.</p>
        category: <p>Source server post migration custom action category.</p>
        account_id: <p>Source server post migration custom account ID.</p>

    Raises:
        capo_mgn.errors.conflict_exception.ConflictException: <p>The request could not be completed due to a conflict with the current state of the target resource.</p>
        capo_mgn.errors.resource_not_found_exception.ResourceNotFoundException: <p>Resource not found exception.</p>
        capo_mgn.errors.uninitialized_account_exception.UninitializedAccountException: <p>Uninitialized account exception.</p>
        capo_mgn.errors.validation_exception.ValidationException: <p>Validate exception.</p>
        capo_mgn.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_mgn.types.put_source_server_action_request.PutSourceServerActionRequest]",
    ) -> AsyncOperationResponse[
        "capo_mgn.types.source_server_action_document.SourceServerActionDocument"
    ]:
        import capo_mgn._operations.application_migration_service.put_source_server_action

        (
            output,
            http_response,
        ) = await capo_mgn._operations.application_migration_service.put_source_server_action.async_put_source_server_action(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("PutSourceServerAction")
    )
    input_: capo_mgn.types.put_source_server_action_request.PutSourceServerActionRequest = {
        "source_server_id": source_server_id,
        "action_name": action_name,
        "document_identifier": document_identifier,
        "order": order,
        "action_id": action_id,
    }
    if document_version is not None:
        input_["document_version"] = document_version
    if active is not None:
        input_["active"] = active
    if timeout_seconds is not None:
        input_["timeout_seconds"] = timeout_seconds
    if must_succeed_for_cutover is not None:
        input_["must_succeed_for_cutover"] = must_succeed_for_cutover
    if parameters is not None:
        input_["parameters"] = parameters
    if external_parameters is not None:
        input_["external_parameters"] = external_parameters
    if description is not None:
        input_["description"] = description
    if category is not None:
        input_["category"] = category
    if account_id is not None:
        input_["account_id"] = account_id

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