Starting a build server on z/OS®
On z/OS®, you can configure the build server to perform z/OS® or USS builds. If you need both builds, then you need to start two servers, each listening on a unique TCP/IP port for each type.
Syntax
You start a build server by using z/OS® JCL commands. The syntax for the parameters line is as follows:
![Syntax: // PARM= '-p <portno> [-V ...] [-a {2|1|0} [-n <n>] [-q <q>] [-t]'](../images/gegl_core_starting_server_zos.gif)
- Specifies the port number (portno) to which the server listens to communicate with the clients.
- Specifies the verbosity level of the server. You may specify this parameter up to three times (maximum verbosity).
- Specifies authentication mode:
- 2
- Server state: A (authorized). The server code was installed in an APF-authorized library. When you initiate a build by using the remote build client, you must specify the build descriptor option destUserID with a valid TSO user ID and destPassword with a valid TSO password. The server performs the build transaction under the access and authority of this user ID. Mode 2 is the default.
- 1
- Server state: A. You can provide a valid TSO user ID and password. The server performs the build transaction under the access and authority of this user. If you do not provide a user ID and password, the build transaction is performed under the access and authority of the user ID assigned to the build server job.
- 0
- Server state: A or U (unauthorized). If U, APF-authorized build programs will fail. If you specify a TSO user ID and password, the server ignores them and the build transaction is performed under the access and authority of the user ID assigned to the build server job.
- Specifies the number of concurrent builds. The default is 1. Set n equal to the number of concurrent builds you want to allow. Once there are n number of concurrent builds running, the build server queues any additional requests and submits them on a first come first served basis as builds are completed.
- Specifies the size of the queue (q) for clients. The default is 10. Each queued client uses a TCP/IP socket. Therefore setting this too high may require more sockets than are available, causing unpredictable results. If the queue is full, subsequent clients are rejected by the server. However, the build client retries the build in that case.
- Starts tracing of this server job and writes output to STDOUT. This parameter is normally used only for debugging.
Procedure
- Add a job card.
- Modify the parameters on the PARM statement of the EXEC card as necessary. (See the parameter list above.)
- Modify the STEPLIB DD statement to point to the data set that contains the build server load modules. This library contains all the load modules that make up the remote build server.
- Modify the CCUWJCL DD statement to point to the data set that contains the JCL to run an individual build job. This should be a modified version of the CCUMVS.JCL (for z/OS® builds) or CCUUSS.JCL (for USS builds).
- Specify CCUBLOG as a sequential data set. This is where the log of the build server is written.
- Modify the parameter (PARM=) statement as appropriate for your job (see example below).
- Submit the job.
Example
//jobcard
//*------------------------------------------------------
//RUNPGM EXEC PGM=CCUMAIN,DYNAMNBR=30,REGION=7400K,TIME=NOLIMIT,
// PARM='-p 2604 -a 2 -n 3 -q 20'
//STEPLIB DD DSN=CCUBLD.LOADLIB,DISP=SHR
//CCUWJCL DD DISP=SHR,DSN=CCUBLD.JCL(CCUMVS) for z/OS builds
//*CCUWJCL DD DISP=SHR,DSN=CCUBLD.JCL(CCUUSS) for USS builds
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*
//CCUBLOG DD SYSOUT=*To modify the JCL for USS builds,
move the comment indicator (* in //*CCUWJCL)
after // on the previous line.Special considerations for z/OS® builds
If you start the server on z/OS® from an APF-authorized library (this is required in modes 1 and 2 but is optional in mode 0), the build script can specify an APF authorized program as the executable.
If the server is not started from an APF-authorized library, the build script can specify only non-APF authorized programs as executables.
Setting the language of messages returned from the build server
The build server on z/OS® returns messages in any of the languages listed in the next table. English is the default.
| Language | Code |
|---|---|
| Brazilian Portugese | ptb |
| Chinese, simplified | chs |
| Chinese, traditional | cht |
| English, USA | enu |
| French | fra |
| German | deu |
| Italian | ita |
| Japanese | jpn |
| Korean | kor |
| Spanish | esp |
To cause build-server messages to be returned in a language other than English, change the setting of environment variable CCU_LANG on the client machine. The variable contains one of the language codes listed in the previous table. To return messages in French, for example, set CCU_LANG to fra.
shared_resources\eclipse\plugins
\com.ibm.etools.egl.distributedbuild_version\executables\ccu.cat.xxx- shared_resources
- The shared resources directory for your product, such as
C:\Program Files\IBM\SDP70Sharedon a Windows™ system or/opt/IBM/SDP70Sharedon a Linux™ system. If you installed and kept a previous version of an IBM® product containing EGL before installing your current product, you may need to specify the shared resources directory that was set up in the earlier installation. - version
- The installed version of the plugin. If more than one is present, use the one with the most recent version number, unless you have a reason to use an older version.
- xxx
- The code for the language of interest; one of the codes listed in the previous table
Finally, if the build server runs under USS and you want to return messages in a language other than English, you also need to change the content of the shell script ccubldw.sh. That script is customized when the USS build-server component is installed.
To support more than one language on USS, start a different USS build-server component for each language, with each component listening on a different port and using a different version of the script.
export CCU_CATALOG=
/installationDir/usr/lpp/EnterpriseDeveloper
/BuildServer/ccu.cat.xxx- installationDir
- Directory in which the USS build-server component is installed
- xxx
- The code for the language that is supported by the script; one of the lower-case codes listed in the previous table
Additional details on build-server configuration
For additional details on how to configure a build server, see the IBM® Rational® COBOL Runtime for z/Series program directory (GI10-3242).