SMS / Client / create_app

create_app#

SMS.Client.create_app(**kwargs)#

Creates an application. An application consists of one or more server groups. Each server group contain one or more servers.

See also: AWS API Documentation

Request Syntax

response = client.create_app(
    name='string',
    description='string',
    roleName='string',
    clientToken='string',
    serverGroups=[
        {
            'serverGroupId': 'string',
            'name': 'string',
            'serverList': [
                {
                    'serverId': 'string',
                    'serverType': 'VIRTUAL_MACHINE',
                    'vmServer': {
                        'vmServerAddress': {
                            'vmManagerId': 'string',
                            'vmId': 'string'
                        },
                        'vmName': 'string',
                        'vmManagerName': 'string',
                        'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                        'vmPath': 'string'
                    },
                    'replicationJobId': 'string',
                    'replicationJobTerminated': True|False
                },
            ]
        },
    ],
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ]
)
Parameters:
  • name (string) – The name of the new application.

  • description (string) – The description of the new application

  • roleName (string) – The name of the service role in the customer’s account to be used by Server Migration Service.

  • clientToken (string) – A unique, case-sensitive identifier that you provide to ensure the idempotency of application creation.

  • serverGroups (list) –

    The server groups to include in the application.

    • (dict) –

      Logical grouping of servers.

      • serverGroupId (string) –

        The ID of a server group.

      • name (string) –

        The name of a server group.

      • serverList (list) –

        The servers that belong to a server group.

        • (dict) –

          Represents a server.

          • serverId (string) –

            The ID of the server.

          • serverType (string) –

            The type of server.

          • vmServer (dict) –

            Information about the VM server.

            • vmServerAddress (dict) –

              The VM server location.

              • vmManagerId (string) –

                The ID of the VM manager.

              • vmId (string) –

                The ID of the VM.

            • vmName (string) –

              The name of the VM.

            • vmManagerName (string) –

              The name of the VM manager.

            • vmManagerType (string) –

              The type of VM management product.

            • vmPath (string) –

              The VM folder path in the vCenter Server virtual machine inventory tree.

          • replicationJobId (string) –

            The ID of the replication job.

          • replicationJobTerminated (boolean) –

            Indicates whether the replication job is deleted or failed.

  • tags (list) –

    The tags to be associated with the application.

    • (dict) –

      Key/value pair that can be assigned to an application.

      • key (string) –

        The tag key.

      • value (string) –

        The tag value.

Return type:

dict

Returns:

Response Syntax

{
    'appSummary': {
        'appId': 'string',
        'importedAppId': 'string',
        'name': 'string',
        'description': 'string',
        'status': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'DELETED'|'DELETE_FAILED',
        'statusMessage': 'string',
        'replicationConfigurationStatus': 'NOT_CONFIGURED'|'CONFIGURED',
        'replicationStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_REPLICATION'|'VALIDATION_IN_PROGRESS'|'REPLICATION_PENDING'|'REPLICATION_IN_PROGRESS'|'REPLICATED'|'PARTIALLY_REPLICATED'|'DELTA_REPLICATION_IN_PROGRESS'|'DELTA_REPLICATED'|'DELTA_REPLICATION_FAILED'|'REPLICATION_FAILED'|'REPLICATION_STOPPING'|'REPLICATION_STOP_FAILED'|'REPLICATION_STOPPED',
        'replicationStatusMessage': 'string',
        'latestReplicationTime': datetime(2015, 1, 1),
        'launchConfigurationStatus': 'NOT_CONFIGURED'|'CONFIGURED',
        'launchStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_LAUNCH'|'VALIDATION_IN_PROGRESS'|'LAUNCH_PENDING'|'LAUNCH_IN_PROGRESS'|'LAUNCHED'|'PARTIALLY_LAUNCHED'|'DELTA_LAUNCH_IN_PROGRESS'|'DELTA_LAUNCH_FAILED'|'LAUNCH_FAILED'|'TERMINATE_IN_PROGRESS'|'TERMINATE_FAILED'|'TERMINATED',
        'launchStatusMessage': 'string',
        'launchDetails': {
            'latestLaunchTime': datetime(2015, 1, 1),
            'stackName': 'string',
            'stackId': 'string'
        },
        'creationTime': datetime(2015, 1, 1),
        'lastModified': datetime(2015, 1, 1),
        'roleName': 'string',
        'totalServerGroups': 123,
        'totalServers': 123
    },
    'serverGroups': [
        {
            'serverGroupId': 'string',
            'name': 'string',
            'serverList': [
                {
                    'serverId': 'string',
                    'serverType': 'VIRTUAL_MACHINE',
                    'vmServer': {
                        'vmServerAddress': {
                            'vmManagerId': 'string',
                            'vmId': 'string'
                        },
                        'vmName': 'string',
                        'vmManagerName': 'string',
                        'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                        'vmPath': 'string'
                    },
                    'replicationJobId': 'string',
                    'replicationJobTerminated': True|False
                },
            ]
        },
    ],
    'tags': [
        {
            'key': 'string',
            'value': 'string'
        },
    ]
}

Response Structure

  • (dict) –

    • appSummary (dict) –

      A summary description of the application.

      • appId (string) –

        The unique ID of the application.

      • importedAppId (string) –

        The ID of the application.

      • name (string) –

        The name of the application.

      • description (string) –

        The description of the application.

      • status (string) –

        Status of the application.

      • statusMessage (string) –

        A message related to the status of the application

      • replicationConfigurationStatus (string) –

        Status of the replication configuration.

      • replicationStatus (string) –

        The replication status of the application.

      • replicationStatusMessage (string) –

        A message related to the replication status of the application.

      • latestReplicationTime (datetime) –

        The timestamp of the application’s most recent successful replication.

      • launchConfigurationStatus (string) –

        Status of the launch configuration.

      • launchStatus (string) –

        The launch status of the application.

      • launchStatusMessage (string) –

        A message related to the launch status of the application.

      • launchDetails (dict) –

        Details about the latest launch of the application.

        • latestLaunchTime (datetime) –

          The latest time that this application was launched successfully.

        • stackName (string) –

          The name of the latest stack launched for this application.

        • stackId (string) –

          The ID of the latest stack launched for this application.

      • creationTime (datetime) –

        The creation time of the application.

      • lastModified (datetime) –

        The last modified time of the application.

      • roleName (string) –

        The name of the service role in the customer’s account used by Server Migration Service.

      • totalServerGroups (integer) –

        The number of server groups present in the application.

      • totalServers (integer) –

        The number of servers present in the application.

    • serverGroups (list) –

      The server groups included in the application.

      • (dict) –

        Logical grouping of servers.

        • serverGroupId (string) –

          The ID of a server group.

        • name (string) –

          The name of a server group.

        • serverList (list) –

          The servers that belong to a server group.

          • (dict) –

            Represents a server.

            • serverId (string) –

              The ID of the server.

            • serverType (string) –

              The type of server.

            • vmServer (dict) –

              Information about the VM server.

              • vmServerAddress (dict) –

                The VM server location.

                • vmManagerId (string) –

                  The ID of the VM manager.

                • vmId (string) –

                  The ID of the VM.

              • vmName (string) –

                The name of the VM.

              • vmManagerName (string) –

                The name of the VM manager.

              • vmManagerType (string) –

                The type of VM management product.

              • vmPath (string) –

                The VM folder path in the vCenter Server virtual machine inventory tree.

            • replicationJobId (string) –

              The ID of the replication job.

            • replicationJobTerminated (boolean) –

              Indicates whether the replication job is deleted or failed.

    • tags (list) –

      The tags associated with the application.

      • (dict) –

        Key/value pair that can be assigned to an application.

        • key (string) –

          The tag key.

        • value (string) –

          The tag value.

Exceptions

  • SMS.Client.exceptions.UnauthorizedOperationException

  • SMS.Client.exceptions.InvalidParameterException

  • SMS.Client.exceptions.MissingRequiredParameterException

  • SMS.Client.exceptions.InternalError

  • SMS.Client.exceptions.OperationNotPermittedException