Linked versions in z/OS® components

A linked version is a new versioning model for HCL DevOps Deploy (Deploy) z/OS® component types. By using the linked version, you can create a sequence of interconnected versions that maintains the logical progression of changes similar to a Git commit history. When you deploy a linked version to an environment, it reflects the exact state of the application at that point in the version sequence of the application.

When you create a linked version, you must ensure that each version has a preceding version designated as its parent. The first version of the component does not require a parent. This tree-like structure forms a hierarchical sequence of versions, as shown in the following image:

Note: The linked version type is currently supported for only external GIT repositories. Therefore, you must provide external repository inputs when you create a linked version.

Linked versions provides stronger traceability.

Each linked version is created by using a specific GIT commit that you provide as input. This commit reference establishes a continuous chain of custody so that you trace the deployed binary artifacts back to the corresponding source code changes.

This granular traceability is essential for the following purposes:
  • Compliance and auditing: You can quickly verify the specific code changes that were deployed to an environment.
  • Debugging and rollback: You can identify the exact changes that introduced a defect, and you can to roll back to the version that corresponds to the preceding stable commit.

By modeling versions in this manner, Deploy ensures that deployed artifacts maintain the same degree of integrity, historical context, and detailed information as the source code. This method provides tight alignment between deployment tracking and established development workflows.

A linked version offers the efficiency of an incremental version while functioning like a full version. During deployment, only the delta artifacts are copied instead of copying the entire application, which reduces the processing time and resource usage.

Notes:
  • When you create the first linked version for a component, you must not provide the -from.hash parameter. The initial linked version is designated as the root version for the component. It typically serves as the baseline and includes all application binaries after the transition to linked versions.
  • Each component can have only one root-linked version.
  • Every linked version that you create after the root must be a direct or indirect descendant of that root version
Restrictions and limitations: You cannot deploy an incremental version on top of a linked version; however, you can deploy a linked version over an incremental version. Full versions and linked versions are interoperable.