AMT Help Files

YAML Config

 This information is incomplete.

YAML configuration files are used for the AMT Control Center ("cc.config.yaml") and AMT applications ("amt-config.yaml). Each key and setting found in these files is described below, and indicated whether the setting applies to the Control Center or applications with an 'X'.

  cc-config.yaml amt-config.yaml

version – example: version: v1
The version of this configuration file.

X X

name
The name of the AMT environment.

X X

environment
The description for this AMT environment.

X X

basePath – example: basePath: "C:\\AMT"
The root directory of the environment

  X

applicationName
The name of the application. This name is also used to define the application database and must therefore be exactly the same.

  X

applicationPackage – example: applicationPackage: com.helloword.company
The domain, followed by company or organization name, and application name.

  X

remoteApplicationPackages
The domain, followed by company or organization name, and application name. On startup, all programs from the specified remote packges are loaded in order, and duplicates are skipped.

  X

<application 1> – example: appXX: com.helloword.company
The first application: the domain, followed by company or organization name, and application name.

  X

<application 2> – example: appYY: com.helloword.company
The first application: the domain, followed by company or organization name, and application name.

  X
The Secure Storage section.

secureStorages

X X

- id: <config1>

It is possible to add multiple Secure Storage configurations and use them simultaneously.

X X

vaultType – example: vaultType: Simple
Set the type of vault to use:

  • Azure: Makes use of the Microsoft Azure Key Vault.
  • GCP: Makes use of the Secret Manager of the Google Cloud Platform.
  • HashiCorp: Makes use of the HashiCorp Vault.
  • Custom: Use any vault implementation of your choice.
  • Simple: This type of key vault makes use of a text file with encrypted credentials. Not recommended for use in production.
X X

vaultConfiguration

X X

vaultFilePath
Only used if 'vaultType' is set to 'Simple'. Set this to the file path of the file containing the credentials of the system or application databases. Not recommended for use in production. Also see page: File: Key Vault.

X X

securePath (Simple vault only)
Only used if 'vaultType' is set to 'HashiCorp'. Set this to the folder path containing the secret of the HashiCorp Vault.

X X

engineVersion (HashiCorp vault only)
Only used if 'vaultType' is set to 'HashiCorp'. Set the engine version to '1' or '2'. '2' is the default value if the engine version is not specified.

X X

serverCertificate

X X

keyPath default: /certs/server1.key
The path to the server key (file or classpath resource). If not set, the default key will be loaded from the default classpath.

X X

certificatePath default: /certs/server1.pem
The path to the server certificate (file or classpath resource). If not set, the default certificate will be loaded from the default classpath.

X X

azureCredentialType
Set the Azure credential type if 'vaultType' is set to 'Azure'.

X X

azureVaultName
Enter the name of the Azure vault if 'vaultType' is set to 'Azure'.

X X

vaultClass

...

X X
The Authentication section.

Authentication 

X X

type – default: type: OIDC
The type of authentication used. OpenID Connect (OIDC) is the only available option.

X X

settings

X X

issuerURL
The URL of the OpenID provider.

X X

clientID
The ID of the application registered at the OpenID provider to identify the application when authentication requests are made.

X X

returnUrl
Only used in combination with Keycloak. This is the URL returned.

X X
The Database configuration section. First define the database kind: systemDatabase, transactionDatabase, or applicationDatabase.

systemDatabase

X  

transactionDatabase

X  

applicationDatabase

  X

type – example: type: POSTGRES
Set the type of database. Available values are:

  • POSTGRES
  • ORACLE
  • MSSQL
  • DB2
X X

settings
All of the database settings below can be stored in the key vault. A dollar sign $ prefixing a value denotes the use of a key stored in the key vault file. For example: password: $systemDatabasePassword

X X

name
Enter the name of the System Database.

X X

schema
Enter the name of the Schema of the System Database. The Schema name must be exactly the same as the Database name.

X X

username
Set the name of the user authorized to access the System Database.

X X

password
Set the Password of the user.

X X

driverClassname
Set the driver for the database.

  • For PostgreSQL: driverClassname: org.postgresql.Driver.
  • For Oracle: driverClassname: oracle.jdbc.driver.
  • For DB2: driverClassname: com.ibm.db2.jcc.DB2Driver.
X X

url
Set the server database URL. This must be configured according to the type of database used:

  • For PostgreSQL: url:jdbc:postgresql://<Server>:<Port>/<Database>.
  • For Oracle: url:jdbc:oracle://<Server>:<Port>/<TNS>.
  • For DB2:
    url:jdbc:db2://<Server>:<Port>/amtsys
X X

hibernateDialect – example: hibernateDialect: org.hibernate.dialect.PostgreSQLDialect
Set the database dialect for the Hibernate framework.

  • For DB2: org.hibernate.dialect.DB2Dialect.
X X

hibernateShowSql – default: hibernateShowSQL: false
If set to true, this enables the logging of all the generated SQL statements to the console and a log file.

X X

connectionPoolSize – default: connectionPoolSize: 200
The maximum number of onnections to the connection pool.

X X

lockTimeoutSeconds – default: lockTimeoutSeconds: 20
The number of seconds before a database is unlocked.

X X

lockTimeoutReportsProgramsSeconds – default: lockTimeoutReportsProgramsSeconds: 5
The number of seconds before a database is unlocked. If the lock is not released after the timeout, the report or program will retry several times.

X X

sqlCommandTimeout – default: sqlCommandTimeout: 30
The number of seconds for a screen or report to wait for a SQL command to be performed.

X X

nlsLanguage (Oracle databases only) – example: nlsLanguage: AMERICAN
Set the language for an Oracle client connection.

X X
The Applications for the Control Center. Add an entry for each applications to configure their connection settings individually.

applications

X  

<Application Name>
The name of the application, as set for the applicationName setting.

X  

host
The server address.

X  

gRPCPort
The server port number.

X  

httpOnly
If set to True, the system only uses the HTTP protocol for communication.

X  
The Cluster and Remote Cluster sections. A cluster configuration allows the bundling or separation of applications, and controllers. A cluster consists of a single node or multiple nodes (optional), including remote clusters. A remote cluster allows for starting transactions on a remote application.

cluster

X  

remoteCluster

X  

type – example: type: PEKKO
The type of cluster used. PEKKO is the only available option.

X  

mode – default: mode: SINGLE_NODE

  • SINGLE_NODE
  • CLUSTER_NODE
X  

nodes

X  

<node name>

X  

settings

X  

host
The host of the application.

X  

gRPCPort
Set the gRPC port of the host.

X  

restPort
Set the REST port of the host.

X  

httpOnly – default: httpOnly: false
If set to True, the system only uses the HTTP protocol for communication between nodes in the cluster.

X  

jobQueues – default: jobQueues: default
Sets the default job queue for this node.

X  
The Runtime section for AMT applications.

runtime

  X

settings

  X

customSignEncoding – default: customSignEncoding: ""
Define a custom sign encoding. This must be a string of 20 unique characters, corresponding with the sign encoding digits -9 to -0, followed by +0 to +9. In the following example, the custom sign encoding uses the same characters as the EBCDIC numeric sign encoding type.

Example: customSignEncoding: RQPONMLKJ}{ABCDEFGHI

  X

cacheWorkingStorage – default: cacheWorkingStorage: false
Boolean.

  X

storeCompInASCII – default: storeCompInASCII: false
Boolean.

  X

translationFileEBCDIC – example: translationFileEBCDIC: "C:\\AMT\translationFileEBCDIC"
The file path to the translation file.

  X

useAmtCursor – default: useAmtCursor: false
Boolean.

  X

clientTimeoutdefault: clientTimeout: 3000
Set a timeout in milliseconds.

  X

transactionTimeoutdefault: transactionTimeout: 3000
Set a timeout for transactions in milliseconds.

  X

grpcIdleTimeoutdefault: grpcIdleTimeout: 60
This is the timeout (in seconds) for idle channels before it is closed by the server. This could be useful while debugging to prevent channels getting closed during long gRPC calls.

  X

fileMessageSize – default: fileMessageSize: 2
Set the (maximum) message size in MB.

  X

urimap – example: urimap: "urimap.yaml"
Enter the filepath\filename containing the URIMAP configuration.

  X

pythonInterpreter – default: pythonInterpreter: python
This setting is optional. Specify the full path to the binary that the system should use as the python interpreter.

  X

useDate – example: useDate: 20250123
This setting is optional. Set a date to be used for testing purposes in yyyyMMdd format. The application uses this date instead of the system date.

  X
The COBOL Configuration section for AMT applications.

cobolConfig

  X

cwaSize – default: cwaSize: 0
The size of the Common Work Area in bytes.

  X

Sample Files

cc-config.yaml amt-config.yaml
---
####################################################################################################
#
# CONTROL-CENTER CONFIGURATION
# General Control-Center related configuration items.
#
####################################################################################################
version: v1
name: AMT Control Center Java Configuration Template
environment: DEV
####################################################################################################
#
# SECURE STORAGE
# Settings related to the secure storage provider. This ties into the database settings later on.
#
####################################################################################################
secureStorages:
  # Secure Storage can be configured in a couple of different ways.
  # See the Secure Storage Wiki page for more information.
  vaultType: Simple
  vaultConfiguration:
    vaultFilePath: C:/AMT/cc-secrets.txt
####################################################################################################
#
# CONTROL-CENTER NODE
# Settings related to the Control-Center REST server.
#
####################################################################################################
node:
  host: 0.0.0.0
  restPort: 9001
  httpOnly: false # Will disable TLS if set to true.
####################################################################################################
#
# AUTHENTICATION CONFIGURATION
# Settings related to the external authentication provider.
#
####################################################################################################
authentication:
  type: OIDC
  settings:
    issuerURL: https://login.microsoftonline.com/<id>/v2.0
    clientID: <id>
####################################################################################################
#
# SUPPORTED APPLICATIONS
# Configure any application that the Control-Center will be managing.
#
####################################################################################################
applications:
  custmanibm:
    host: localhost
    gRPCPort: 8080
    httpOnly: false # Will disable TLS if set to true.
####################################################################################################
#
# SYSTEM DATABASE CONFIGURATION
# Settings related to the system database. Values can be keys for the configured key vault
# from the Secure Storage section up above.
#
####################################################################################################
systemDatabase:
  type: POSTGRES
  settings:
    name: amtsystem
    schema: amtsystem
    username: amtsystem
    password: amtsystem
    driverClassname: org.postgresql.Driver
    url: jdbc:postgresql://db:5432/amtsystem
    hibernateDialect: org.hibernate.dialect.PostgreSQLDialect
    # Uncomment these if you want to override the default values.
    #hibernateShowSql: false
    #connectionPoolSize: 200
    #lockTimeoutSeconds: 20
    #lockTimeoutReportsProgramsSeconds: 5
    #sqlCommandTimeout: 30
####################################################################################################
#
# TRANSACTION DATABASE CONFIGURATION (ENABLE & USE WHEN CONFIGURING A TRANSACTION DATABASE)
# Settings related to the transaction database. Values can be keys for the configured key vault
# from the Secure Storage section up above.
#
####################################################################################################
#transactionDatabase:
#  type: POSTGRES
#  settings:
#    name: amtsystransaction              
#    schema: amtsystransaction            
#    username: amtsystransactionUser      
#    password: amtsystransactionPassword  
#    driverClassname: org.postgresql.Driver
#    url: jdbc:postgresql://localhost/amtsystransaction
#    hibernateDialect: org.hibernate.dialect.PostgreSQLDialect
#    # Uncomment these if you want to override the default values.
#    #hibernateShowSql: false
#    #connectionPoolSize: 200
#    #lockTimeoutSeconds: 20
#    #lockTimeoutReportsProgramsSeconds: 5
#    #sqlCommandTimeout: 30
...
---
####################################################################################################
#
# APPLICATION CONFIGURATION
# General application related configuration items.
#
####################################################################################################
version: v1
name: AMT GO Java Application Configuration Template
environment: DEV
basePath: "C:\\Amt"
applicationName: <application>
applicationPackage: com.mycompany.custmanibm #################################################################################################### # # SECURE STORAGE SECTION # Settings related to the secure storage provider. This ties into the database settings later on. # #################################################################################################### secureStorage: # Secure Storage can be configured in a couple of different ways. # See the Secure Storage Wiki page for more information. vaultType: Simple vaultConfiguration: vaultFilePath: "C:\\Amt\\cc-secrets.txt" #################################################################################################### # # RUNTIME CONFIGURATION SECTION # Settings related to the runtime behavior of the application. # #################################################################################################### runtime: settings: customSignEncoding: "" cacheWorkingStorage: false storeCompInASCII: false translationFileEBCDIC: "C:\\Amt\\translationFileEBCDIC" useAmtCursor: false clientTimeout: 3000 # milliseconds grpcIdleTimeout: 60 # seconds fileMessageSize: 2 # MB # Optional, set specific path to python interpreter if it's not the default version on the OS. # Applies only to the application runtime configuration. #pythonInterpreter: "C:\\Path\\To\\Python\\Executable.exe" #################################################################################################### # # AUTHENTICATION CONFIGURATION SECTION # Settings related to the external authentication provider. # #################################################################################################### authentication: type: OIDC settings: issuerURL: https://login.microsoftonline.com/<id>/v2.0 clientID: <id> #################################################################################################### # # SYSTEM DATABASE CONFIGURATION SECTION # Settings related to the system database. Values can be keys for the configured key vault # from the Secure Storage section up above. # #################################################################################################### systemDatabase: type: POSTGRES settings: name: amtsystem schema: amtsystem username: amtsystem password: amtsystem driverClassname: org.postgresql.Driver url: jdbc:postgresql://db:5432/amtsystem hibernateDialect: org.hibernate.dialect.PostgreSQLDialect # Uncomment these if you want to override the default values. #hibernateShowSql: false #connectionPoolSize: 200 #lockTimeoutSeconds: 20 #lockTimeoutReportsProgramsSeconds: 5 #sqlCommandTimeout: 30 #################################################################################################### # # TRANSACTION DATABASE CONFIGURATION SECTION (ENABLE & USE WHEN CONFIGURING A TRANSACTION DATABASE) # Settings related to the transaction database. Values can be keys for the configured key vault # from the Secure Storage section up above. # #################################################################################################### #transactionDatabase: # type: POSTGRES # settings: # name: amtsystransaction # schema: amtsystransaction # username: amtsystransactionUser # password: amtsystransactionPassword # driverClassname: org.postgresql.Driver # url: jdbc:postgresql://localhost/amtsystransaction # hibernateDialect: org.hibernate.dialect.PostgreSQLDialect # # Uncomment these if you want to override the default values. # #hibernateShowSql: false # #connectionPoolSize: 200 # #lockTimeoutSeconds: 20 # #lockTimeoutReportsProgramsSeconds: 5 # #sqlCommandTimeout: 30 #################################################################################################### # # APPLICATION DATABASE CONFIGURATION SECTION # Settings related to the application database. Values can be keys for the configured key vault # from the Secure Storage section up above. # #################################################################################################### custmanibm: aliases: al1, al2 type: POSTGRES settings: name: custman-ibm schema: custman-ibm username: custman-ibm password: custman-ibm driverClassname: org.postgresql.Driver url: localhost # Uncomment these if you want to override the default values. #queryCacheSize: 2 # MB #connectionPoolSize: 200 #encryptConnection: false #stringParametersAsUnicode: false #statementCachePoolSize: 10 # When set to 0 statement caching is disabled #newConnection: false #nlsLanguage: AMERICAN #################################################################################################### # # CLUSTER CONFIGURATION (SINGLE-NODE EXAMPLE) # Settings related to the cluster configuration. A cluster can be single node (as configured below) # or multi-node (as shown in the commented out example further down). # #################################################################################################### cluster: type: PEKKO mode: SINGLE_NODE nodes: single-node-amt: settings: host: 0.0.0.0 gRPCPort: 8080 restPort: 9000 httpOnly: false jobQueues: default
remoteCluster
nodes:
remote-node1:
settings:
host: 0.0.0.0
gRPCPort: 8090
# remote-node2:
# settings:
# host: 0.0.0.0
# gRPCPort: 8091 #################################################################################################### # # CLUSTER CONFIGURATION (MULTI-NODE EXAMPLE) # Multi-node settings for a cluster configuration. # #################################################################################################### #cluster: # type: PEKKO # mode: CLUSTER_NODE # nodes: # node-1: # settings: # host: 0.0.0.0 # port: 25251 # seedNodes: localhost:25251,localhost:25252 # gRPCPort: 8080 # restPort: 9000 # httpOnly: false # roles: job,file,program # jobQueues: Default # node-2: # settings: # host: 0.0.0.0 # port: 25252 # seedNodes: localhost:25251,localhost:25252 # gRPCPort: 8081 # restPort: 9001 # httpOnly: false # roles: job,file,program # jobQueues: Default # node-3: # settings: # host: 0.0.0.0 # port: 0 # seedNodes: localhost:25251,localhost:25252 # gRPCPort: 8082 # restPort: 9002 # httpOnly: false # roles: transaction,file # node-4: # settings: # host: 0.0.0.0 # port: 0 # seedNodes: localhost:25251,localhost:25252 # gRPCPort: 8083 # restPort: 9003 # httpOnly: false # roles: transaction,file,print #################################################################################################### # # COBOL CONFIGURATION # #################################################################################################### cobolConfig: cwaSize: 0 ...