Skip to content

put_template_action async

put_template_action(
    launch_configuration_template_id: LaunchConfigurationTemplateID,
    action_name: BoundedString,
    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,
    operating_system: Optional[OperatingSystemString] = None,
    external_parameters: Optional[SsmDocumentExternalParameters] = None,
    description: Optional[ActionDescription] = None,
    category: Optional[ActionCategory] = None,
) -> TemplateActionDocument

Put template post migration custom action.

Parameters:

  • launch_configuration_template_id (LaunchConfigurationTemplateID) –

    Launch configuration template ID.

  • action_name (BoundedString) –

    Template post migration custom action name.

  • document_identifier (BoundedString) –

    Template post migration custom action document identifier.

  • order (OrderType) –

    Template post migration custom action order.

  • action_id (ActionID) –

    Template post migration custom action ID.

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

    Template post migration custom action document version.

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

    Template post migration custom action active status.

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

    Template post migration custom action timeout in seconds.

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

    Template post migration custom action must succeed for cutover.

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

    Template post migration custom action parameters.

  • operating_system (Optional[OperatingSystemString], default: None ) –

    Operating system eligible for this template post migration custom action.

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

    Template post migration custom action external parameters.

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

    Template post migration custom action description.

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

    Template post migration custom action category.

Raises:

Source code in docs_src/capo_mgn/_services/async_mgn.py
async def put_template_action(
    self,
    launch_configuration_template_id: "capo_mgn.types.launch_configuration_template_id.LaunchConfigurationTemplateID",
    action_name: "capo_mgn.types.bounded_string.BoundedString",
    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,
    operating_system: Optional[
        "capo_mgn.types.operating_system_string.OperatingSystemString"
    ] = 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,
) -> "capo_mgn.types.template_action_document.TemplateActionDocument":
    """<p>Put template post migration custom action.</p>

    Args:
        launch_configuration_template_id: <p>Launch configuration template ID.</p>
        action_name: <p>Template post migration custom action name.</p>
        document_identifier: <p>Template post migration custom action document identifier.</p>
        order: <p>Template post migration custom action order.</p>
        action_id: <p>Template post migration custom action ID.</p>
        document_version: <p>Template post migration custom action document version.</p>
        active: <p>Template post migration custom action active status.</p>
        timeout_seconds: <p>Template post migration custom action timeout in seconds.</p>
        must_succeed_for_cutover: <p>Template post migration custom action must succeed for cutover.</p>
        parameters: <p>Template post migration custom action parameters.</p>
        operating_system: <p>Operating system eligible for this template post migration custom action.</p>
        external_parameters: <p>Template post migration custom action external parameters.</p>
        description: <p>Template post migration custom action description.</p>
        category: <p>Template post migration custom action category.</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_template_action_request.PutTemplateActionRequest]",
    ) -> AsyncOperationResponse[
        "capo_mgn.types.template_action_document.TemplateActionDocument"
    ]:
        import capo_mgn._operations.application_migration_service.put_template_action

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

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("PutTemplateAction")
    )
    input_: capo_mgn.types.put_template_action_request.PutTemplateActionRequest = {
        "launch_configuration_template_id": launch_configuration_template_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 operating_system is not None:
        input_["operating_system"] = operating_system
    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

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