Versioning, Managing, and Automating Db2 DDL Changes with Endevor

Endevor, Broadcom’s mainframe DevOps and lifecycle automation product, enables organizations to not only store code but perform custom builds, drive changes through the application lifecycle, and deploy application code from development, to test, all the way through to production.

When used together with Db2 for z/OS tools from Broadcom, Endevor provides an easy-to-use and reliable Db2 schema management solution, empowering development teams to work with Db2 objects in a self-service fashion.

Endevor provides an uncomplicated way to store schema data — such as DDL — in the same way as code, enabling developers to make schema changes without needing to send a request to a mainframe DBA.

Endevor Sandboxes and Dynamic Environments allow developers to work on their schema changes in isolated environments without impacting other stages in the application lifecycle — such as test and production. When used together with the Db2 Tools Zowe dbm-db2 CLI plugin from Broadcom, Endevor can initiate automatic schema provisioning to developer sandbox environments and enable deployment of the schema changes for testing.

In addition to storing code, Db2 schema, and objects, Endevor can store environmental characteristics of the test environment so that when the code is promoted to a particular stage, the automatic pipeline can use environment artifacts and the Db2 Tools Zowe dbm-db2 CLI plugin to deploy schema changes to the particular development and test environments.

The Endevor Bridge for Git feature, together with the Db2 Tools Zowe dbm-db2 CLI, further enables developers to work with the schema changes directly from their IDE of choice and collaborate on the projects that involve schema changes using contemporary tooling — for example, using GitHub.

The Endevor Bridge for Git CLI can initiate automatic builds of local code changes and trigger schema provisioning pipelines. This enables developers to edit both code and schema, then deploy their code and schema changes to test in a contemporary self-service fashion. Developers can do this without the need to access the mainframe using a 3270 terminal emulator or get the DBA involved.

In the diagram below we can see how Endevor can be integrated with Github to enable Michele, a NextGen developer, to develop using VS Code, Michele’s IDE of choice. She can update the DDL changes for Db2 needed for her application, as well as COBOL for backend processing and React for the applications UI.

These changes can be deployed through development, test, and production stages in unison using a CI/CD tool like Jenkins — automating the DDL changes to the Db2 instance at each stage by Endevor triggering a Jenkins Webhook. Jenkins then promotes the DDL as the application changes are promoted through the Endevor source code management system.

Roger the DBA continues to be involved in this process as described in our previous blog to ensure that the DDL follows quality and other site specific standards — such as naming conventions — before approving its promotion to test. If we can imagine an automated testing harness being kicked off by a CI/CD pipeline in test then when all tests have passed the application, and with Roger’s approval, the DDL changes would be good to move to production.

This approach is powerful — it exposes the mainframe source code and DDL as any other source code and is enabling the developer to use their contemporary tools of choice, such as VS code and Git. This normalizes the way developers interact with the mainframe to build powerful, scalable, and secure applications.

You can learn more about our Broadcom Db2 for z/OS DevOps story here.

Please reach out to our Db2 for z/OS Experts using Db2-Experts.pdl@broadcom.com with any questions you may have specific to Db2 DevOps.

Hope you are well and staying safe!

--

--

John Benbow
Modern Mainframe

Sr Manager Product Owners Data Management Value Stream @broadcom