Repository Structure

The Bank of Z repository contains the application source, setup automation, build assets, deployment configuration, and supporting documentation required to build and deploy the application.

Top-level structure

Directory / File Description
src/ Application source code — COBOL, BMS, IMS, z/OS Connect APIs, and the web frontend
.setup/ All automation for provisioning, building, and deploying Bank of Z
.vscode/ VS Code task definitions for triggering setup and pipeline scripts
scripts/ Utility scripts for downloading and installing IDE extensions
docs/ Product documentation
zcodescan/ ZCodeScan configuration for static analysis
dbb-app.yaml DBB application descriptor
zapp.yaml z/OS application manifest

Application source (src/)

Directory Description
src/base/cics/ COBOL programs, BMS maps, and copybooks for the CICS transaction path
src/base/ims/ COBOL programs and copybooks for the IMS transaction path
src/base/batch/ Batch application components
src/api/ z/OS Connect API project — Gradle-based build producing the API deployment artifact
src/frontend/ Browser-based frontend — HTML, CSS, JavaScript, and a Node.js dev server

Setup automation (.setup/)

Orchestration scripts

Script Runs on Description
setup-local.sh Local machine Creates the USS workspace, clones the repository on USS, and invokes setup-remote.sh via Zowe CLI. Used by the Zowe CLI workflow.
setup-remote.sh z/OS USS Chains the three setup stages in sequence. Used by both the Zowe CLI and GRUB workflows.
setup-common.sh z/OS USS Implements the three setup stages: validate-prereqs, environment, and install-bank-of-z.
pipeline-local.sh Local machine Uploads pipeline assets and invokes pipeline-remote.sh via Zowe CLI. Used by the Zowe CLI workflow for incremental builds.
pipeline-remote.sh z/OS USS Runs the DBB build and Wazi Deploy on USS. Used by both workflows for incremental builds.

Configuration and assets

Directory Description
.setup/config/ config.yaml — environment configuration for all setup scripts
.setup/build/ DBB build configuration: datasets.yaml, dbb-build.yaml, language scripts, and zosattributes
.setup/deploy/ Wazi Deploy configuration and deployment method definitions
.setup/jcl/ JCL assets including Db2-grant.jcl
.setup/zconfig/ zconfig definitions for provisioning CICS and IMS regions
.setup/tasks/ Individual task scripts for DBB build, Wazi Deploy, and ZCodeScan
.setup/setup/ Individual setup stage scripts (Db2, CICS, IMS, z/OS Connect, frontend)
.setup/lib/ Shared shell library functions used by the orchestration scripts

IDE Extension scripts (scripts/)

Script Description
download-vsix.js Downloads all required IDE extension VSIX packages
install-bobide-vsix.js Installs downloaded VSIX packages into IBM Bob Premium Package for Z
install-vscode-vsix.js Installs downloaded VSIX packages into VS Code

See scripts/README.md for usage instructions.


Documentation (docs/)

Documentation is maintained alongside the application source. See the Architecture section for information about the Bank of Z solution design, and Installation and Setup to deploy the application.