AWSMainframeModernization

2023/05/31 - AWSMainframeModernization - 5 updated api methods

Changes  Adds an optional create-only 'roleArn' property to Application resources. Enables PS and PO data set org types.

CreateApplication (updated) Link ¶
Changes (request)
{'roleArn': 'string'}

Creates a new application with given parameters. Requires an existing runtime environment and application definition file.

See also: AWS API Documentation

Request Syntax

client.create_application(
    clientToken='string',
    definition={
        'content': 'string',
        's3Location': 'string'
    },
    description='string',
    engineType='microfocus'|'bluage',
    kmsKeyId='string',
    name='string',
    roleArn='string',
    tags={
        'string': 'string'
    }
)
type clientToken

string

param clientToken

Unique, case-sensitive identifier the service generates to ensure the idempotency of the request to create an application. The service generates the clientToken when the API call is triggered. The token expires after one hour, so if you retry the API within this timeframe with the same clientToken, you will get the same response. The service also handles deleting the clientToken after it expires.

This field is autopopulated if not provided.

type definition

dict

param definition

[REQUIRED]

The application definition for this application. You can specify either inline JSON or an S3 bucket location.

Note

This is a Tagged Union structure. Only one of the following top level keys can be set: content, s3Location.

  • content (string) --

    The content of the application definition. This is a JSON object that contains the resource configuration/definitions that identify an application.

  • s3Location (string) --

    The S3 bucket that contains the application definition.

type description

string

param description

The description of the application.

type engineType

string

param engineType

[REQUIRED]

The type of the target platform for this application.

type kmsKeyId

string

param kmsKeyId

The identifier of a customer managed key.

type name

string

param name

[REQUIRED]

The unique identifier of the application.

type roleArn

string

param roleArn

The Amazon Resource Name (ARN) of the role associated with the application.

type tags

dict

param tags

A list of tags to apply to the application.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'applicationArn': 'string',
    'applicationId': 'string',
    'applicationVersion': 123
}

Response Structure

  • (dict) --

    • applicationArn (string) --

      The Amazon Resource Name (ARN) of the application.

    • applicationId (string) --

      The unique application identifier.

    • applicationVersion (integer) --

      The version number of the application.

CreateDataSetImportTask (updated) Link ¶
Changes (request)
{'importConfig': {'dataSets': {'dataSet': {'datasetOrg': {'po': {'encoding': 'string',
                                                                 'format': 'string',
                                                                 'memberFileExtensions': ['string']},
                                                          'ps': {'encoding': 'string',
                                                                 'format': 'string'}}}}}}

Starts a data set import task for a specific application.

See also: AWS API Documentation

Request Syntax

client.create_data_set_import_task(
    applicationId='string',
    clientToken='string',
    importConfig={
        'dataSets': [
            {
                'dataSet': {
                    'datasetName': 'string',
                    'datasetOrg': {
                        'gdg': {
                            'limit': 123,
                            'rollDisposition': 'string'
                        },
                        'po': {
                            'encoding': 'string',
                            'format': 'string',
                            'memberFileExtensions': [
                                'string',
                            ]
                        },
                        'ps': {
                            'encoding': 'string',
                            'format': 'string'
                        },
                        'vsam': {
                            'alternateKeys': [
                                {
                                    'allowDuplicates': True|False,
                                    'length': 123,
                                    'name': 'string',
                                    'offset': 123
                                },
                            ],
                            'compressed': True|False,
                            'encoding': 'string',
                            'format': 'string',
                            'primaryKey': {
                                'length': 123,
                                'name': 'string',
                                'offset': 123
                            }
                        }
                    },
                    'recordLength': {
                        'max': 123,
                        'min': 123
                    },
                    'relativePath': 'string',
                    'storageType': 'string'
                },
                'externalLocation': {
                    's3Location': 'string'
                }
            },
        ],
        's3Location': 'string'
    }
)
type applicationId

string

param applicationId

[REQUIRED]

The unique identifier of the application for which you want to import data sets.

type clientToken

string

param clientToken

Unique, case-sensitive identifier you provide to ensure the idempotency of the request to create a data set import. The service generates the clientToken when the API call is triggered. The token expires after one hour, so if you retry the API within this timeframe with the same clientToken, you will get the same response. The service also handles deleting the clientToken after it expires.

This field is autopopulated if not provided.

type importConfig

dict

param importConfig

[REQUIRED]

The data set import task configuration.

Note

This is a Tagged Union structure. Only one of the following top level keys can be set: dataSets, s3Location.

  • dataSets (list) --

    The data sets.

    • (dict) --

      Identifies a specific data set to import from an external location.

      • dataSet (dict) -- [REQUIRED]

        The data set.

        • datasetName (string) -- [REQUIRED]

          The logical identifier for a specific data set (in mainframe format).

        • datasetOrg (dict) -- [REQUIRED]

          The type of dataset. The only supported value is VSAM.

          Note

          This is a Tagged Union structure. Only one of the following top level keys can be set: gdg, po, ps, vsam.

          • gdg (dict) --

            The generation data group of the data set.

            • limit (integer) --

              The maximum number of generation data sets, up to 255, in a GDG.

            • rollDisposition (string) --

              The disposition of the data set in the catalog.

          • po (dict) --

            The details of a PO type data set.

            • encoding (string) --

              The character set encoding of the data set.

            • format (string) -- [REQUIRED]

              The format of the data set records.

            • memberFileExtensions (list) -- [REQUIRED]

              An array containing one or more filename extensions, allowing you to specify which files to be included as PDS member.

              • (string) --

          • ps (dict) --

            The details of a PS type data set.

            • encoding (string) --

              The character set encoding of the data set.

            • format (string) -- [REQUIRED]

              The format of the data set records.

          • vsam (dict) --

            The details of a VSAM data set.

            • alternateKeys (list) --

              The alternate key definitions, if any. A legacy dataset might not have any alternate key defined, but if those alternate keys definitions exist, provide them as some applications will make use of them.

              • (dict) --

                Defines an alternate key. This value is optional. A legacy data set might not have any alternate key defined but if those alternate keys definitions exist, provide them, as some applications will make use of them.

                • allowDuplicates (boolean) --

                  Indicates whether the alternate key values are supposed to be unique for the given data set.

                • length (integer) -- [REQUIRED]

                  A strictly positive integer value representing the length of the alternate key.

                • name (string) --

                  The name of the alternate key.

                • offset (integer) -- [REQUIRED]

                  A positive integer value representing the offset to mark the start of the alternate key part in the record byte array.

            • compressed (boolean) --

              Indicates whether indexes for this dataset are stored as compressed values. If you have a large data set (typically > 100 Mb), consider setting this flag to True.

            • encoding (string) --

              The character set used by the data set. Can be ASCII, EBCDIC, or unknown.

            • format (string) -- [REQUIRED]

              The record format of the data set.

            • primaryKey (dict) --

              The primary key of the data set.

              • length (integer) -- [REQUIRED]

                A strictly positive integer value representing the length of the primary key.

              • name (string) --

                A name for the Primary Key.

              • offset (integer) -- [REQUIRED]

                A positive integer value representing the offset to mark the start of the primary key in the record byte array.

        • recordLength (dict) -- [REQUIRED]

          The length of a record.

          • max (integer) -- [REQUIRED]

            The maximum record length. In case of fixed, both minimum and maximum are the same.

          • min (integer) -- [REQUIRED]

            The minimum record length of a record.

        • relativePath (string) --

          The relative location of the data set in the database or file system.

        • storageType (string) --

          The storage type of the data set: database or file system. For Micro Focus, database corresponds to datastore and file system corresponds to EFS/FSX. For Blu Age, there is no support of file system and database corresponds to Blusam.

      • externalLocation (dict) -- [REQUIRED]

        The location of the data set.

        Note

        This is a Tagged Union structure. Only one of the following top level keys can be set: s3Location.

        • s3Location (string) --

          The URI of the Amazon S3 bucket.

  • s3Location (string) --

    The Amazon S3 location of the data sets.

rtype

dict

returns

Response Syntax

{
    'taskId': 'string'
}

Response Structure

  • (dict) --

    • taskId (string) --

      The task identifier. This operation is asynchronous. Use this identifier with the GetDataSetImportTask operation to obtain the status of this task.

GetApplication (updated) Link ¶
Changes (response)
{'roleArn': 'string'}

Describes the details of a specific application.

See also: AWS API Documentation

Request Syntax

client.get_application(
    applicationId='string'
)
type applicationId

string

param applicationId

[REQUIRED]

The identifier of the application.

rtype

dict

returns

Response Syntax

{
    'applicationArn': 'string',
    'applicationId': 'string',
    'creationTime': datetime(2015, 1, 1),
    'deployedVersion': {
        'applicationVersion': 123,
        'status': 'Deploying'|'Succeeded'|'Failed',
        'statusReason': 'string'
    },
    'description': 'string',
    'engineType': 'microfocus'|'bluage',
    'environmentId': 'string',
    'kmsKeyId': 'string',
    'lastStartTime': datetime(2015, 1, 1),
    'latestVersion': {
        'applicationVersion': 123,
        'creationTime': datetime(2015, 1, 1),
        'status': 'Creating'|'Available'|'Failed',
        'statusReason': 'string'
    },
    'listenerArns': [
        'string',
    ],
    'listenerPorts': [
        123,
    ],
    'loadBalancerDnsName': 'string',
    'logGroups': [
        {
            'logGroupName': 'string',
            'logType': 'string'
        },
    ],
    'name': 'string',
    'roleArn': 'string',
    'status': 'Creating'|'Created'|'Available'|'Ready'|'Starting'|'Running'|'Stopping'|'Stopped'|'Failed'|'Deleting'|'Deleting From Environment',
    'statusReason': 'string',
    'tags': {
        'string': 'string'
    },
    'targetGroupArns': [
        'string',
    ]
}

Response Structure

  • (dict) --

    • applicationArn (string) --

      The Amazon Resource Name (ARN) of the application.

    • applicationId (string) --

      The identifier of the application.

    • creationTime (datetime) --

      The timestamp when this application was created.

    • deployedVersion (dict) --

      The version of the application that is deployed.

      • applicationVersion (integer) --

        The version of the deployed application.

      • status (string) --

        The status of the deployment.

      • statusReason (string) --

        The reason for the reported status.

    • description (string) --

      The description of the application.

    • engineType (string) --

      The type of the target platform for the application.

    • environmentId (string) --

      The identifier of the runtime environment where you want to deploy the application.

    • kmsKeyId (string) --

      The identifier of a customer managed key.

    • lastStartTime (datetime) --

      The timestamp when you last started the application. Null until the application runs for the first time.

    • latestVersion (dict) --

      The latest version of the application.

      • applicationVersion (integer) --

        The application version.

      • creationTime (datetime) --

        The timestamp when the application version was created.

      • status (string) --

        The status of the application.

      • statusReason (string) --

        The reason for the reported status.

    • listenerArns (list) --

      The Amazon Resource Name (ARN) for the network load balancer listener created in your Amazon Web Services account. Amazon Web Services Mainframe Modernization creates this listener for you the first time you deploy an application.

      • (string) --

    • listenerPorts (list) --

      The port associated with the network load balancer listener created in your Amazon Web Services account.

      • (integer) --

    • loadBalancerDnsName (string) --

      The public DNS name of the load balancer created in your Amazon Web Services account.

    • logGroups (list) --

      The list of log summaries. Each log summary includes the log type as well as the log group identifier. These are CloudWatch logs. Amazon Web Services Mainframe Modernization pushes the application log to CloudWatch under the customer's account.

      • (dict) --

        A subset of the attributes that describe a log group. In CloudWatch a log group is a group of log streams that share the same retention, monitoring, and access control settings.

        • logGroupName (string) --

          The name of the log group.

        • logType (string) --

          The type of log.

    • name (string) --

      The unique identifier of the application.

    • roleArn (string) --

      The Amazon Resource Name (ARN) of the role associated with the application.

    • status (string) --

      The status of the application.

    • statusReason (string) --

      The reason for the reported status.

    • tags (dict) --

      A list of tags associated with the application.

      • (string) --

        • (string) --

    • targetGroupArns (list) --

      Returns the Amazon Resource Names (ARNs) of the target groups that are attached to the network load balancer.

      • (string) --

GetDataSetDetails (updated) Link ¶
Changes (response)
{'dataSetOrg': {'po': {'encoding': 'string', 'format': 'string'},
                'ps': {'encoding': 'string', 'format': 'string'}}}

Gets the details of a specific data set.

See also: AWS API Documentation

Request Syntax

client.get_data_set_details(
    applicationId='string',
    dataSetName='string'
)
type applicationId

string

param applicationId

[REQUIRED]

The unique identifier of the application that this data set is associated with.

type dataSetName

string

param dataSetName

[REQUIRED]

The name of the data set.

rtype

dict

returns

Response Syntax

{
    'blocksize': 123,
    'creationTime': datetime(2015, 1, 1),
    'dataSetName': 'string',
    'dataSetOrg': {
        'gdg': {
            'limit': 123,
            'rollDisposition': 'string'
        },
        'po': {
            'encoding': 'string',
            'format': 'string'
        },
        'ps': {
            'encoding': 'string',
            'format': 'string'
        },
        'vsam': {
            'alternateKeys': [
                {
                    'allowDuplicates': True|False,
                    'length': 123,
                    'name': 'string',
                    'offset': 123
                },
            ],
            'cacheAtStartup': True|False,
            'compressed': True|False,
            'encoding': 'string',
            'primaryKey': {
                'length': 123,
                'name': 'string',
                'offset': 123
            },
            'recordFormat': 'string'
        }
    },
    'lastReferencedTime': datetime(2015, 1, 1),
    'lastUpdatedTime': datetime(2015, 1, 1),
    'location': 'string',
    'recordLength': 123
}

Response Structure

  • (dict) --

    • blocksize (integer) --

      The size of the block on disk.

    • creationTime (datetime) --

      The timestamp when the data set was created.

    • dataSetName (string) --

      The name of the data set.

    • dataSetOrg (dict) --

      The type of data set. The only supported value is VSAM.

      Note

      This is a Tagged Union structure. Only one of the following top level keys will be set: gdg, po, ps, vsam. 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'}
      • gdg (dict) --

        The generation data group of the data set.

        • limit (integer) --

          The maximum number of generation data sets, up to 255, in a GDG.

        • rollDisposition (string) --

          The disposition of the data set in the catalog.

      • po (dict) --

        The details of a PO type data set.

        • encoding (string) --

          The character set encoding of the data set.

        • format (string) --

          The format of the data set records.

      • ps (dict) --

        The details of a PS type data set.

        • encoding (string) --

          The character set encoding of the data set.

        • format (string) --

          The format of the data set records.

      • vsam (dict) --

        The details of a VSAM data set.

        • alternateKeys (list) --

          The alternate key definitions, if any. A legacy dataset might not have any alternate key defined, but if those alternate keys definitions exist, provide them as some applications will make use of them.

          • (dict) --

            Defines an alternate key. This value is optional. A legacy data set might not have any alternate key defined but if those alternate keys definitions exist, provide them, as some applications will make use of them.

            • allowDuplicates (boolean) --

              Indicates whether the alternate key values are supposed to be unique for the given data set.

            • length (integer) --

              A strictly positive integer value representing the length of the alternate key.

            • name (string) --

              The name of the alternate key.

            • offset (integer) --

              A positive integer value representing the offset to mark the start of the alternate key part in the record byte array.

        • cacheAtStartup (boolean) --

          If set to True, enforces loading the data set into cache before it’s used by the application.

        • compressed (boolean) --

          Indicates whether indexes for this dataset are stored as compressed values. If you have a large data set (typically > 100 Mb), consider setting this flag to True.

        • encoding (string) --

          The character set used by the data set. Can be ASCII, EBCDIC, or unknown.

        • primaryKey (dict) --

          The primary key of the data set.

          • length (integer) --

            A strictly positive integer value representing the length of the primary key.

          • name (string) --

            A name for the Primary Key.

          • offset (integer) --

            A positive integer value representing the offset to mark the start of the primary key in the record byte array.

        • recordFormat (string) --

          The record format of the data set.

    • lastReferencedTime (datetime) --

      The last time the data set was referenced.

    • lastUpdatedTime (datetime) --

      The last time the data set was updated.

    • location (string) --

      The location where the data set is stored.

    • recordLength (integer) --

      The length of records in the data set.

ListApplications (updated) Link ¶
Changes (response)
{'applications': {'roleArn': 'string'}}

Lists the applications associated with a specific Amazon Web Services account. You can provide the unique identifier of a specific runtime environment in a query parameter to see all applications associated with that environment.

See also: AWS API Documentation

Request Syntax

client.list_applications(
    environmentId='string',
    maxResults=123,
    names=[
        'string',
    ],
    nextToken='string'
)
type environmentId

string

param environmentId

The unique identifier of the runtime environment where the applications are deployed.

type maxResults

integer

param maxResults

The maximum number of applications to return.

type names

list

param names

The names of the applications.

  • (string) --

type nextToken

string

param nextToken

A pagination token to control the number of applications displayed in the list.

rtype

dict

returns

Response Syntax

{
    'applications': [
        {
            'applicationArn': 'string',
            'applicationId': 'string',
            'applicationVersion': 123,
            'creationTime': datetime(2015, 1, 1),
            'deploymentStatus': 'Deploying'|'Deployed',
            'description': 'string',
            'engineType': 'microfocus'|'bluage',
            'environmentId': 'string',
            'lastStartTime': datetime(2015, 1, 1),
            'name': 'string',
            'roleArn': 'string',
            'status': 'Creating'|'Created'|'Available'|'Ready'|'Starting'|'Running'|'Stopping'|'Stopped'|'Failed'|'Deleting'|'Deleting From Environment',
            'versionStatus': 'Creating'|'Available'|'Failed'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • applications (list) --

      Returns a list of summary details for all the applications in a runtime environment.

      • (dict) --

        A subset of the possible application attributes. Used in the application list.

        • applicationArn (string) --

          The Amazon Resource Name (ARN) of the application.

        • applicationId (string) --

          The unique identifier of the application.

        • applicationVersion (integer) --

          The version of the application.

        • creationTime (datetime) --

          The timestamp when the application was created.

        • deploymentStatus (string) --

          Indicates either an ongoing deployment or if the application has ever deployed successfully.

        • description (string) --

          The description of the application.

        • engineType (string) --

          The type of the target platform for this application.

        • environmentId (string) --

          The unique identifier of the runtime environment that hosts this application.

        • lastStartTime (datetime) --

          The timestamp when you last started the application. Null until the application runs for the first time.

        • name (string) --

          The name of the application.

        • roleArn (string) --

          The Amazon Resource Name (ARN) of the role associated with the application.

        • status (string) --

          The status of the application.

        • versionStatus (string) --

          Indicates the status of the latest version of the application.

    • nextToken (string) --

      A pagination token that's returned when the response doesn't contain all applications.