Installing and configuring the DBB toolkit on z/OS

Installing

The Program Directory for IBM Dependency Based Build contains the information about the materials and procedures to install the Dependency Based Build toolkit. To download a PDF version of the program directory, click here.

The results of the SMP/E installation are a USS directory found at /usr/lpp/IBM/dbb and a data set containing sample members that were used for the installation. The USS directory contains the following subdirectories:

Subdirectory Usage
archive Supporting product archives including Db2 activation .zip file
bin Executable scripts
conf Configuration files to be modified by the user
groovy Groovy distribution
lib DBB API jar files
migration Sample scripts related to migration

Environment variables

Beginning in DBB V1.0.2, several Dependency Based Build toolkit APIs require the existence of two environment variables to function correctly. These variables can be configured by using the dbbenv.sh file.

Name Description
DBB_HOME DBB home directory
DBB_CONF DBB configuration directory

Java environment variables for a proxy fronted DBB web application

In certain situations, you might have to restrict access to the DBB web application. For example, the DBB web application might be accessible only through a front-end proxy server. For this topology, you must use the following Java™ environment variables when invoking a Groovy scripting file that requires communication to the protected web application. These Java Networking settings are explained in Java Networking and Proxies in the Oracle documentation.

You must set the following properties for the protocol handler:

Name Description
-Djava.net.useSystemProxies Set to true
-Dhttps.proxyHost IP address or hostname of the proxy host
-Dhttps.proxyPort Port number of the proxy host

The following code is an example of how to invoke a Groovy script where the web application is accessed through a proxy server.

groovyz -Djava.net.useSystemProxies=true -Dhttps.proxyHost=123.12.1.1 -Dhttps.proxyPort=50050 build.groovy

Configuring and customizing

The configuration of the DBB toolkit requires the creation of build scripts to be executed by build users or via automation such as Jenkins. The following information is provided as reference when you need to customize DBB.

Several files in the installation conf subdirectory might need to be modified or copied to other directories to enable DBB functions in certain circumstances. As you implement build scripts and use these functions, it might become necessary to customize these files and reference them from a directory outside of the SMP/E installation, such as /etc/dbb. These files are as follows:

Note:Starting from DBB V1.0.6 and IDz V14.2.0, idzdbb.env is renamed to rse-dbb.env.

DBB daemon files

The following files are for the DBB daemon. For more information about the DBB daemon, see Improving performance with ZD&T or Java startup by using DBB daemon. Ignore these files if you do not want to use the DBB daemon.

Value Definition
Name The alias that you use when referring to the process with the client
Process The Build Process that is used for this process (no change is needed)
Classpath The classpath for the process launched (change it depending on your installation)
Options Any options that you want to pass to the Build Process (such as debug)
Count (Optional) The number of processes that you want to preload (If count is greater than 0, the personal daemon will only pre-start 1 process. You can start additional processes manually.)
Delay (Optional) The delay time to retry a process if all current processes are busy

For the most part, no changes are needed unless your directories are different than above. The value for Delay is best set at the time it takes to run a build. The value for Count depends on how many builds you are running using the daemon.

Example of a process definition

<ProcessDefinition>
    <name>groovyz</name>
    <process>com.ibm.dbb.build.ext.buildprocess.GroovyBuildProcess</process>
    <classpath>/usr/lpp/IBM/dbb/lib/*:/usr/lpp/IBM/dbb/groovy-2.4.12/lib/*</classpath>
    <options>-Djava.library.path=/usr/lpp/IBM/dbb/lib/</options>
    <count>1</count>
</ProcessDefinition>

Enabling System Management Facility (SMF) support

For more information about SMF support in DBB and its enabling and configuration, see System Management Facility (SMF) support.