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