Migrating AWS Card to STACKIT — Gary Crook, CEO
To illustrate Heirloom’s capabilities, we migrated AWS Card—an open-source COBOL/CICS/JCL/VSAM mainframe application that processes financial transactions, to the STACKIT cloud platform.
This demonstration is a simple but powerful illustration of the potential for even the most entrenched legacy systems to thrive in sovereign cloud environments.
The AWS Card open-source application represents a typical mainframe workload with:
– COBOL-based business logic
– CICS for online transaction processing
– JCL for batch processing
– VSAM data storage
The Heirloom Solution
Using Heirloom, this open-source mainframe application was transformed into a cloud-native solution deployed on STACKIT’s Cloud Foundry runtime with PostgreSQL as the database layer:
For technical architects interested in the high-level implementation details, here’s an overview of how the AWS Card application was deployed to the STACKIT sovereign cloud platform.
You can review some short video demonstrations on how the application code and data were migrated using Heirloom, here.
Cloud Foundry Configuration
Once we have created a Java application package card.war, the next step is to configure the target infrastructure on the STACKIT cloud. The application environment was configured using a standard manifest.yml file to describe the Cloud Foundry runtime:
applications:
- name: card-app
memory: 2G
instances: 1
path: card.war
buildpacks:
- java_buildpack
env:
JBP_CONFIG_OPEN_JDK_JRE: '{ jre: { version: 17.+ } }'
JBP_CONFIG_TOMCAT: '{ tomcat: { version: 9.0.+ } }'
JBP_CONFIG_DEBUG: '{enabled: true}'
timeout: 180
Deploying the application to the STACKIT Cloud Foundry environment was very straightforward:
$ cf push heirloom-demos -p card.war
As soon as the application is deployed, we can execute it (and until we shut down the instance, you can too):
https://heirloom-demos.apps.01.cf.eu01.stackit.cloud/servlet
USER ID: USER0001
PASSWORD: PASSWORD
This is what the menu item “06. Transaction List” looks like: