mgn / Client / terminate_target_instances

terminate_target_instances#

mgn.Client.terminate_target_instances(**kwargs)#

Starts a job that terminates specific launched EC2 Test and Cutover instances. This command will not work for any Source Server with a lifecycle.state of TESTING, CUTTING_OVER, or CUTOVER.

See also: AWS API Documentation

Request Syntax

response = client.terminate_target_instances(
    accountID='string',
    sourceServerIDs=[
        'string',
    ],
    tags={
        'string': 'string'
    }
)
Parameters:
  • accountID (string) – Terminate Target instance by Account ID

  • sourceServerIDs (list) –

    [REQUIRED]

    Terminate Target instance by Source Server IDs.

    • (string) –

  • tags (dict) –

    Terminate Target instance by Tags.

    • (string) –

      • (string) –

Return type:

dict

Returns:

Response Syntax

{
    'job': {
        'arn': 'string',
        'creationDateTime': 'string',
        'endDateTime': 'string',
        'initiatedBy': 'START_TEST'|'START_CUTOVER'|'DIAGNOSTIC'|'TERMINATE',
        'jobID': 'string',
        'participatingServers': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'launchedEc2InstanceID': 'string',
                'postLaunchActionsStatus': {
                    'postLaunchActionsLaunchStatusList': [
                        {
                            'executionID': 'string',
                            'executionStatus': 'IN_PROGRESS'|'SUCCESS'|'FAILED',
                            'failureReason': 'string',
                            'ssmDocument': {
                                'actionName': 'string',
                                'externalParameters': {
                                    'string': {
                                        'dynamicPath': 'string'
                                    }
                                },
                                'mustSucceedForCutover': True|False,
                                'parameters': {
                                    'string': [
                                        {
                                            'parameterName': 'string',
                                            'parameterType': 'STRING'
                                        },
                                    ]
                                },
                                'ssmDocumentName': 'string',
                                'timeoutSeconds': 123
                            },
                            'ssmDocumentType': 'AUTOMATION'|'COMMAND'
                        },
                    ],
                    'ssmAgentDiscoveryDatetime': 'string'
                },
                'sourceServerID': 'string'
            },
        ],
        'status': 'PENDING'|'STARTED'|'COMPLETED',
        'tags': {
            'string': 'string'
        },
        'type': 'LAUNCH'|'TERMINATE'
    }
}

Response Structure

  • (dict) –

    • job (dict) –

      Terminate Target instance Job response.

      • arn (string) –

        the ARN of the specific Job.

      • creationDateTime (string) –

        Job creation time.

      • endDateTime (string) –

        Job end time.

      • initiatedBy (string) –

        Job initiated by field.

      • jobID (string) –

        Job ID.

      • participatingServers (list) –

        Servers participating in a specific Job.

        • (dict) –

          Server participating in Job.

          • launchStatus (string) –

            Participating server launch status.

          • launchedEc2InstanceID (string) –

            Participating server’s launched ec2 instance ID.

          • postLaunchActionsStatus (dict) –

            Participating server’s Post Launch Actions Status.

            • postLaunchActionsLaunchStatusList (list) –

              List of Post Launch Action status.

              • (dict) –

                Launch Status of the Job Post Launch Actions.

                • executionID (string) –

                  AWS Systems Manager Document’s execution ID of the of the Job Post Launch Actions.

                • executionStatus (string) –

                  AWS Systems Manager Document’s execution status.

                • failureReason (string) –

                  AWS Systems Manager Document’s failure reason.

                • ssmDocument (dict) –

                  AWS Systems Manager’s Document of the of the Job Post Launch Actions.

                  • actionName (string) –

                    User-friendly name for the AWS Systems Manager Document.

                  • externalParameters (dict) –

                    AWS Systems Manager Document external parameters.

                    • (string) –

                      • (dict) –

                        AWS Systems Manager Document external parameter.

                        Note

                        This is a Tagged Union structure. Only one of the following top level keys will be set: dynamicPath. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

                        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
                        
                        • dynamicPath (string) –

                          AWS Systems Manager Document external parameters dynamic path.

                  • mustSucceedForCutover (boolean) –

                    If true, Cutover will not be enabled if the document has failed.

                  • parameters (dict) –

                    AWS Systems Manager Document parameters.

                    • (string) –

                      • (list) –

                        • (dict) –

                          AWS Systems Manager Parameter Store parameter.

                          • parameterName (string) –

                            AWS Systems Manager Parameter Store parameter name.

                          • parameterType (string) –

                            AWS Systems Manager Parameter Store parameter type.

                  • ssmDocumentName (string) –

                    AWS Systems Manager Document name or full ARN.

                  • timeoutSeconds (integer) –

                    AWS Systems Manager Document timeout seconds.

                • ssmDocumentType (string) –

                  AWS Systems Manager Document type.

            • ssmAgentDiscoveryDatetime (string) –

              Time where the AWS Systems Manager was detected as running on the Test or Cutover instance.

          • sourceServerID (string) –

            Participating server Source Server ID.

      • status (string) –

        Job status.

      • tags (dict) –

        Tags associated with specific Job.

        • (string) –

          • (string) –

      • type (string) –

        Job type.

Exceptions

  • mgn.Client.exceptions.UninitializedAccountException

  • mgn.Client.exceptions.ValidationException

  • mgn.Client.exceptions.ConflictException