Creating z/OS component version using the v2 package format#

Starting with HCL™ Launch version 7.0.5, you can create IBM z/OS® component versions from a new package version called version 2 or v2. You can create v2 component versions using the buztool.sh command.

Currently, the artifacts are compressed at the partitioned data set (PDS) level and stored as binary files in Codestation, Nexus, or Artifactory. This condition makes HCL Launch z/OS versions unique because distributed systems packages are stored at the artifact level and not at the folder level.

The cp command is enhanced in USS to provide a way to copy artifacts to and from MVS without losing meta relations like ALIAS. The HCL Launch v2 package format utilizes the enhanced cp command to package versions as-is and store them in Codestation, Nexus, or Artifactory.

You can benefit from several advantages by using the v2 package format:

Note:

You can create component versions from the v2 package by using either of these methods:

For example, use either of the following commands to create a new component version in the CICSModules component:

buztool.sh createzosversion2 -c CICSModules -v fixbug100 -s /u/ucduser/build/shiplist.xml
buztool.sh createzosversion -zpv v2 -c CICSModules -v fixbug100 -s /u/ucduser/build/shiplist.xml

Note:

The buztool properties file#

Copying files from MVS to USS and back requires that you know the content type of the artifact. HCL Launch must determine whether the artifact is an executable file (like a loadlib file) or a binary file (like a DBRM file), or a text file (like a COBOL program). To do this, a property file must be passed as input to the buztool command with the -prop <property-file> parameter. This file contains the deployType to copyType mapping. Any number of unique deploy types can be mapped to any of the copy types: load, binary, or text. Deploy types must be prefixed with the deploytype parameter. Uncomment the parameters you want to use.

By default, container level deployType attributes in shiplist XML are mapped to below copy types :

LOAD -> Executable
OBJ (or) DBRM -> Binary
TEXT -> Text

Below is an example of the buztool properties file:

# This property file contains samples for following
#
#   1) Defining Deploy Type and Copy Type mappings
#    (which will be later used to create version in new package format)
#
#   2) Setting Runtime Delta Deployment Flag
#
#   3) Defining External Repository details
#
#   4) Declaring alternate UCD Server details for creating version
#
# * All the lines in the properties file starting with "#" are comments
#   and can be kept as is for reference.
#
#   Please find detailed explaination for each section below
#
#
# Section - 1 :
# ~~~~~~~~~~~
#
# Defining Deploy Type and Copy Type mappings to create version in
# new package format.
#
# * Deploytypes are mandatory for every Dataset Container in shiplist
#   to create version in new package format.
# * Deploytypes must be prefixed with "deploytype."
#
# Example:
# -------
#
# If deployType is "CICSDBRM", a BINARY dataset then add entry as below
# deploytype.CICSDBRM=BINARY
#
# If deployType is "CICSLOAD", a EXECUTABLE then add entry as below
# deploytype.CICSLOAD=EXEC
#
# If deployType is "CICSLIB", a TEXT dataset then add entry as below
# deploytype.CICSLIB=TEXT
#
# * Property file will have below entries.
#
# deploytype.CICSDBRM=BINARY
# deploytype.CICSLOAD=EXEC
# deploytype.CICSLIB=TEXT
#
#  Add deploytypes to the list as needed.
#
# NOTE:
# ----
# * DeployType is unique in the property file
#   i.e., each deployType must be assigned to only one copyType.
#
deploytype.JCL=TEXT
# Above entry is used to define deploytype with JCL to copyType as TEXT
# to create a version in new package format from below script
# /var/ucd/agents/senthil/v7102/installTest/zossamples/test-create-version-new-format.sh
#
#
# Section - 2 :
# ~~~~~~~~~~~
#
# Setting Runtime Delta Deployment Flag.
#
# Example:
#
# Defining property as below skips the Runtime Delta Deployment
# calculations Logic.
# RUNTIME.DELTADEPLOY=FALSE
#
# NOTE:
# ----
# * Default it is considered as TRUE for version creation.
#
# Section - 3 :
# ~~~~~~~~~~~
# Defining details to store version artifacts to an external repository.
#
# Example:
#
# # Common external repository inputs
# EXTREPO.REPOSITORY_TYPE={Artifactory/Nexus}
# EXTREPO.USERNAME=
# EXTREPO.PASSWORD=
# EXTREPO.URL=
# EXTREPO.REPOSITORY=
#
# # Additional inputs, if external respository type is "Artifactory"
# EXTREPO.APIKEY=
# EXTREPO.httpProxyPort=
# EXTREPO.httpProxyHost=
#
# # Additional inputs, if external respository type is "Nexus"
# EXTREPO.RAWDIRECTORY=
#
#
# Section - 4 :
# ~~~~~~~~~~~
#
# Declaring alternate UCD Server details to create version
#
# Example:
#
# Buztool requires below two properties to create a version on a
# alternate UCD Server
#
# SERVER.URL=
# SERVER.TOKEN=
#
# NOTE:
# ----
# * On default, buztool creates version on a UCD Server defined during
#   installation
#

Parent topic: Creating z/OS component versions