Disclaimer
Your use of this download is governed by Stonebranch’s Terms of Use, which are available at https://www.stonebranch.com/integration-hub/Terms-and-Privacy/Terms-of-Use/
Overview
AWS Mainframe Modernization allows migrating and modernizing on-premises mainframe workloads to a managed runtime environment on AWS. This Universal Extension provides customers that are migrating or modernizing their mainframe applications to AWS Cloud the ability to automate and schedule their tasks.
Version Information
Template Name | Extension Name | Extension Version |
---|---|---|
AWS Mainframe Modernization | ue-aws-mainframe-modernization | 1.3.7 |
Refer to Changelog for version history information.
Software Requirements
This integration requires a Universal Agent and a Python runtime to execute the Universal Task.
Software Requirements for Universal Template and Universal Task
Requires Python 3.7.0 or higher. Tested with the Universal Agent bundled Python distribution.
Software Requirements for Universal Agent
Both Windows and Linux agents are supported:
- Universal Agent for Windows x64 Version 7.0.0 and later with python options installed.
- Universal Agent for Linux Version 7.0.0 and later with python options installed.
Software Requirements for Universal Controller
Universal Controller Version 7.0.0.0 and later.
Network and Connectivity Requirements
The extension's Universal Agent host should be able to establish a connection with:
- AWS Mainframe Modernization endpoints (The provided AWS Credentials should have sufficient permissions on AWS to execute required actions).
Key Features
This Universal Extension provides the following main features:
- The ability to schedule, automate and execute mainframe batch jobs running in AWS Mainframe Modernization Service via Stonebranch Universal Controller
- Monitor Application’s batch processes from the Stonebranch Universal Controller
- Start/Restart/Rerun/Cancel batch processes automatically or manually from the Stonebranch Universal Controller
- Synchronous and asynchronous batch execution from Stonebranch Universal Controller
- Retrieve the results of the AWS Mainframe Modernization Batch processes
- Capture the AWS Cloudwatch logs of the executed jobs in Stonebranch Universal Controller.
Import Universal Template
To use the Universal Template, you first must perform the following steps.
This Universal Task requires the Resolvable Credentials feature. Check that the Resolvable Credentials Permitted system property has been set to true.
To import the Universal Template into your Controller, follow the instructions here.
When the files have been imported successfully, refresh the Universal Templates list; the Universal Template will appear on the list.
Modifications of this integration, applied by users or customers, before or after import, might affect the supportability of this integration. For more information refer to Integration Modifications.
Configure Universal Task
For a new Universal Task, create a new task, and enter the required input fields.
Input Fields
The input fields for this Universal Extension are described below.
Field | Input type | Default value | Type | Description |
---|---|---|---|---|
Action | Required | List Environments | Choice | Action performed upon the task execution. Available actions are as follows.
|
Region | Optional | - | Text | Region for the Amazon Web Service. |
AWS Credentials | Optional | - | Credentials | The Credentials definition should be as follows.
|
End Point | Optional | - | Text | Optional field. If not provided the endpoint will be generated using the Region filed value. |
Application | Optional | - | Dynamic Choice | The application name on which the action will be performed. The user can dynamically fetch the application name from AWS. Visible only when Action is:
Required when visible |
Force Stop | Optional | false | Boolean | Initiate a force-stop action toward an application Visible only when Action is:
|
Execution Id | Optional | - | Text | Batch execution Id to be canceled. Visible only when Action is:
Required when visible |
Filter Pattern | Optional | - | Text | A pattern that will be used as a filter during logs fetching. Visible only when Action is:
|
Log Stream Name | Optional | "*" | Text | Log stream name to be fetched. Visible only when Action is:
|
Fetch Log Format | Optional | "Text" | Choice | Format of log to be fetched.
Visible only when Action is:
|
JCL File Name | Optional | - | Text | Name of the JCI File to be executed. Visible only when Action is:
|
CL File Name (Temp) | Optional | - | Text | Name of the JCI File to be executed. This field value will overwrite the value of "JCL File Name" for the current execution (used in case of re-run). Visible only when Action is:
|
Wait for Success or Failure | Optional | true | Boolean | If selected, the task will continue running until Job reaches the "SUCCEDED" or "FAILED" state. Visible only when Action is:
|
Polling Interval | Optional | 10 | Integer | The polling interval in seconds between checking for the Job status. Visible only when "Wait for Success or Failure" is True |
Fetch Execution Logs | Optional | true | Boolean | Fetch logs from cloud-watch when the task is completed. Visible only when "Wait for Success or Failure" is True |
Log Format | Optional | "Text" | Choice | Format of fetched logs. Visible only when "Fetch Execution Logs" is True |
Re-run Step Name | Optional | - | Text | Step name to re-run batch job. Visible only when Action is:
Not supported in the current version |
Re-run Proc Step Name | Optional | - | Text | Procedure step name to re-run batch job. Visible only when Action is:
Not supported in the current version |
Templib | Templib to be used on batch re-run. Visible only when Action is:
Not supported in the current version |
Task Examples
Start Batch Job
Start Batch Job result example:
STDERR: 2022-10-11 16:09:23,131 - 06692 MainThread - extension.py[222] DEBUG: extension_start fields: {'execution_id': '', 'fetch_logs': True, 'log_format': ['json'], 'log_stream_name': '', 'credentials.password': '****', 'force_stop': False, 'jcl_file_name': 'JOB1.jcl', 'credentials.keyLocation': '', 'jcl_file_name_temp': '', 'interval': 10, 'procstep_name': '', 'credentials.user': 'TESTCREDENTIALS', 'action': ['start-batch'], 'credentials.pasphrase': '', 'region': 'us-east-1', 'fetch_log_format': [''], 'application': [' SBDemoApplication (w33xu53d4vbjjhdtw6lrbsnb5a)'], 'wait': True, 'step_name': '', 'end_point': 'https://m2.us-east-1.amazonaws.com', 'credentials.token': '', 'filter_pattern': '', 'templib': ''} 2022-10-11 16:09:23,137 - 06692 MainThread - extension.py[226] INFO: Extension Information: aws-m2-1.3.8 2022-10-11 16:09:23,139 - 06692 MainThread - extension.py[229] INFO: System Information: Python Version: 3.7.6 (tags/v3.7.6:43364a7ae0, Dec 19 2019, 00:42:30) [MSC v.1916 64 bit (AMD64)], system: Windows, release: 10, version: 10.0.17763, machine type: AMD64 2022-10-11 16:09:23,141 - 06692 MainThread - extension.py[235] INFO: FIELDS: {'application': ' SBDemoApplication (w33xu53d4vbjjhdtw6lrbsnb5a)', 'credentials': {'user': 'TESTCREDENTIALS', 'password': '****'}} 2022-10-11 16:09:23,158 - 06692 MainThread - extension.py[432] DEBUG: application_id = w33xu53d4vbjjhdtw6lrbsnb5a 2022-10-11 16:09:23,159 - 06692 MainThread - extension.py[442] DEBUG: Payload is {'batchJob': {'jclFileName': 'JOB1.jcl'}} 2022-10-11 16:09:23,161 - 06692 MainThread - extension.py[211] INFO: Signed request for https://m2.us-east-1.amazonaws.com/applications/w33xu53d4vbjjhdtw6lrbsnb5a/batch-job with header {'Content-Type': 'application/json'} and data {"batchJob": {"jclFileName": "JOB1.jcl"}} 2022-10-11 16:09:23,339 - 06692 MainThread - extension.py[449] DEBUG: Response = {"executionId":"esk3stwrnze5voziq6nduay35y"} 2022-10-11 16:09:23,341 - 06692 MainThread - extension.py[211] INFO: Signed request for https://m2.us-east-1.amazonaws.com/applications/w33xu53d4vbjjhdtw6lrbsnb5a/batch-job-executions/esk3stwrnze5voziq6nduay35y with header {'Content-Type': 'application/x-amz-json-1.1', 'Accept': 'application/json'} and data None 2022-10-11 16:09:33,408 - 06692 MainThread - extension.py[211] INFO: Signed request for https://m2.us-east-1.amazonaws.com/applications/w33xu53d4vbjjhdtw6lrbsnb5a/batch-job-executions/esk3stwrnze5voziq6nduay35y with header {'Content-Type': 'application/x-amz-json-1.1', 'Accept': 'application/json'} and data None 2022-10-11 16:09:33,477 - 06692 MainThread - extension.py[211] INFO: Signed request for https://logs.us-east-1.amazonaws.com/ with header {'Content-Type': 'application/x-amz-json-1.1', 'Accept': 'application/json', 'X-Amz-Target': 'Logs_20140328.FilterLogEvents'} and data {"logGroupName": "/aws/vendedlogs/m2/w33xu53d4vbjjhdtw6lrbsnb5a/ConsoleLog", "logStreamName": "*", "filterPattern": "esk3stwrnze5voziq6nduay35y"} 2022-10-11 16:09:33,901 - 06692 MainThread - extension.py[585] DEBUG: Response = {"events":[],"nextToken":"Bxkq6kVGFtq2y_MoigeqscPOdhXVbhiVtLoAmXb5jCqYTdzkmNEVSoQKc4X3bPn4pUE3AI-JOdP_U-XHRDMtOsx-q4juLXKgxPk0z6YBa4AUt6eMSPRQN8HfmvfgVeJk9lHlRhVNR1ng67hn8I6YW5PXlelzYroTS0N2XbbjtFTY22JcstlEkhfq6Klm5FDDsWJA7jobotyqquLVuCkiLvy-wLu6s4Zu26Kp2E-ff6SVM7vORAVhW5K98FvomBG7e5SssM7yPq-J5l_J0hMz8A","searchStatistics":{"approximateTotalLogStreamCount":1,"completedLogStreamCount":0},"searchedLogStreams":[]} 2022-10-11 16:09:33,903 - 06692 MainThread - extension.py[587] INFO: Log format = json 2022-10-11 16:09:33,907 - 06692 MainThread - extension.py[111] INFO: extension_start function ended with rc = 0 STDOUT { "events": [], "nextToken": "Bxkq6kVGFtq2y_MoigeqscPOdhXVbhiVtLoAmXb5jCqYTdzkmNEVSoQKc4X3bPn4pUE3AI-JOdP_U-XHRDMtOsx-q4juLXKgxPk0z6YBa4AUt6eMSPRQN8HfmvfgVeJk9lHlRhVNR1ng67hn8I6YW5PXlelzYroTS0N2XbbjtFTY22JcstlEkhfq6Klm5FDDsWJA7jobotyqquLVuCkiLvy-wLu6s4Zu26Kp2E-ff6SVM7vORAVhW5K98FvomBG7e5SssM7yPq-J5l_J0hMz8A", "searchStatistics": { "approximateTotalLogStreamCount": 1, "completedLogStreamCount": 0 }, "searchedLogStreams": [] } EXTENSION Task completed successfully.
List Applications
List Batch Jobs
Start the Application and wait for the execution
Cancel Batch Execution
Fetch logs
Task Output
Output Only Fields
The output fields for this Universal Extension are described below.
Field | Type | Description |
---|---|---|
Application Id | Text | The application Id resulted after starting an application. |
Batch Execution Id | Text | The batch execution Id resulted after starting a batch job. |
Exit Codes
The exit codes are described below.
Exit Code | Status Classification Code | Status Classification Description | Status Description |
---|---|---|---|
0 | SUCCESS | Successful Execution | Task completed |
0 | SUCCESS | Successful Execution | Application successfully started. |
0 | SUCCESS | Successful Execution | Application successfully stopped. |
0 | SUCCESS | Successful Execution | Batch execution successfully cancelled. |
1 | FAILED | Failed Execution | FAILED: <Error Message> |
103 | FAILED | Task Cancelled or stopped | Task failed because of the status of the AWS Batch Job Status |
104 | FAILED | Task Failed | Task failed because of the status of the AWS Batch Job Status |
STDOUT and STDERR
STDERR provides the extension execution log.
STDOUT provides the AWS API response. Backward compatibility is not guaranteed.
EXTENSION Output
The extension provides additional information about the task execution result.
Integration Modifications
Modifications applied by users or customers, before or after import, might affect the supportability of this integration. The following modifications are discouraged to retain the support level as applied for this integration.
- Python code modifications should not be done.
- Template Modifications
- General Section
- "Name", "Extension", "Variable Prefix", "Icon" should not be changed.
- Universal Template Details Section
- "Template Type", "Agent Type", "Send Extension Variables", "Always Cancel on Force Finish" should not be changed.
- Result Processing Defaults Section
- Success and Failure Exit codes should not be changed.
- Success and Failure Output processing should not be changed.
- Fields Restriction Section
- Default configured values should not be changed.
- General Section
Users and customers are encouraged to report defects or feature requests at Stonebranch Support Desk.
Document References
This document references the following documents.
Document Link | Description |
---|---|
Universal Templates | User documentation for creating, working with and understanding Universal Templates and Integrations. |
Universal Tasks | User documentation for creating Universal Tasks in the Universal Controller user interface. |
AWS Mainframe Modernization | User guide for AWS Step Functions. |
Changelog
ue-aws-mainframe-modernization-1.3.7 (2022-10-17)
This is the first official version approved by AWS.