If you have landed on this page, you most certainly know what DBB is, but just in case, let me (re)introduce it.
IBM Dependency Based Build (DBB for short) is an intelligent build product for traditional z/OS applications written in languages such as COBOL and PL/I that allows the analysis of build dependencies between objects.
Development teams have the option to choose a modern software configuration management (SCM) tool such as Git and continuous integration tools to build traditional z/OS applications.
Below is an architecture diagram that shows (via the red highlighted box) how DBB fits into the larger Z DevOps CI/CD solution.
So, what’s new this time?
Well, first let me introduce the shiny and new zBuilder. This is a YAML configuration-based build tool for building z/OS applications with DBB. The DBB zBuilder is an integrated build framework that reduces adoption time by enabling clients to create configuration-driven builds instead of scripted builds. It can be used out of the box and is extensible, if needed.
The zBuilder can run various build types (full build, personal build, impact build etc), which are named build lifecycles. Sample Lifecycle Builds are shipped with the product. This feature provides a ready to use build framework (shipped and fully supported by IBM) for clients which helps reduce adoption time and lowers the long-term total cost of ownership (TCO) by reducing the number of custom build scripts that need to be maintained
Learn more about the zBuilder here
And, what happens to zAppBuild?
If you have been a DBB consumer over the last few years, you are no stranger to zAppBuild which is a generic build framework for building z/OS applications using Apache Groovy build scripts and IBM Dependency Based Build (DBB) APIs.
We are providing zBuilder as an alternative, rather than a replacement to zAppBuild. Both frameworks will be supported for the foreseeable future and customers can adopt the one that best suits/meets their needs. In fact, zAppBuild can also be used with this latest version of DBB v3.0 since all the APIs of zBuilder are based on the same APIs used by zAppBuild. To summarize, clients have the option to use the new zBuilder framework, the zAppBuild open-source build framework, or to write their own custom build programs which call DBB Java APIs directly.
Other new capabilities, enhancements and important notices include:
-
Java 17 support - this support has been added across the gamut of our Z DevOps offerings to ensure we are standardizing and streamlining upgrade paths for our customers. It is also important to note that Java 11 is now a pre-req for this new DBB version.
-
"Leveraging a new Git for z/OS supported by IBM - The IBM Open Enterprise Foundation for z/OS (OEF), launched as part of IBM z/OS 3.1, includes a Git for z/OS distribution. Given the availability of this IBM supported Git port, DBB v3.0 does not ship Rocket Git for z/OS although it continues to work with Rocket Git for z/OS as well as the new OEF Git."
-
Samples for common build scenarios
-
Tutorials on how to effectively use the zBuilder
We have also ensured that there are no breaking changes in DBB v3 (when compared to DBB v2). This means there are no database schema changes and the upgrade path is not cumbersome or difficult.
Let me end this blog with links to some valuable resources:
Shabbir Moledina - Product Manager (DBB, Wazi Deploy, IDz on VS Code)