DevOps Automation

DevOps Automation

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only

Creating a Merged Version on an External Repository for z/OS Deployments

By Shabaz Kowthalam posted 2 days ago

  

The Challenge: Managing Bug-Fix Versions

Imagine you are testing a z/OS component version in a QA/UAT environment within DevOps Deploy and discover a bug. You report it to the development team, who then create a new version with the necessary bug fixes. This process of finding and reporting bugs continues, with the development team creating new versions with fixes until the application works as expected. The next logical step is to push these versions—the initial version and all subsequent bug-fix versions—to the Production environment. So, during a production deployment, one must carefully identify the versions ahead of time that need to be deployed and deploy them in the right order. This can become an overhead and demands a bit of human intellect. However, what if there was a way to simplify this process by merging all these versions into a single new version that could then be used to deploy to production?

Internal vs. External Repositories

Before we talk about how to merge, the important question to ask is: where are my versions and artifacts stored? Are they inside the DevOps Deploy repository, known as Codestation, or are they stored in an external repository like JFrog or Nexus

If the versions are stored in the internal repository, Codestation, we have had a way to create a merged version from a set of versions for a long time. More details can be found in the DevOps Deploy documentation https://www.ibm.com/docs/en/devops-deploy/8.1.2?topic=versions-merging-zos-component

If the versions are stored in an external repository there is no way to merge the component versions until now. 

Solution Overview

We are introducing new steps to create a merged version for versions stored in JFrog Artifactory and Nexus. These steps have been added to the z/OS External Artifact Repository plugin, which also contains download steps for artifacts of a component version from an external repository.

Step-by-Step Guide to Merging Versions

To merge versions, create a generic process using either the Create a merged version for JFrog Artifactory or Create a merged version for Nexus step, depending on your external repository. 

Edit the step and enter the Component name, the versions to be merged (separated by a new line), and the name of the new merged version

Additionally, you must provide the external repository details, including the URL, repository name, username, password, or API key or token, as shown in the example below.

 

 

Run the process with a resource mapped to a z/OS agent. This will create a merged version in the external repository. Now you can use the newly created merged version to be deployed to higher environments like PROD or PRE-PROD.

How to Get the Plugin?

To use the new Create a merged version step, download the latest version of the z/OS External Artifact Repository plugin from the downloads page.

https://urbancode.github.io/IBM-UCx-PLUGIN-DOCS/UCD/zOS-external-artifact-download/downloads.html

0 comments
3 views

Permalink