Starting user builds

A user build is a build request that generates JCL statements to build a program with Engineering Workflow Management system definitions. The user build submits the build request outside of the Engineering Workflow Management build infrastructure. It provides an alternative to the Engineering Workflow Management personal build.

Before you begin

The COBOL, PL/I, or C/C++ program must be assigned to a language definition that is associated with at least one translator. The build steps are defined in the language definition and all the required information to generate the JCL statements is in the translator. For more information about language definitions and translators, see z/OS® language definitions and z/OStranslators.

Use the User Build Preferences page to set options for user build operations. You can open this page from the workbench Preferences window, the Configure User Build operation window, or the Additional files to load window. The procedure in this topic explains how to start a user build with default preference settings. Steps that have options you can set in the user build preferences are flagged with a link to more information about the preferences, You can read about all of the preferences here: User Build Preferences.

About this task

You can run a user build for COBOL, PL/I, or C/C++ files in the following projects:
  • A zComponent project in Engineering Workflow Management.
  • A z/OS project in Developer for z/OS.
A user build request generates and submits JCL for building a source program file with the required dependencies. The generated JCL statements create a TSO environment by generating a custom IKJEFT01 EXEC step. The step uses information in the ISPF.conf and rse.env files to use the ISPF or TSO command or exec call method that is provided in the translator. For more information about these configuration files, see ISPF.conf, the Legacy ISPF Gateway configuration file and rse.env, the z/OS Explorer configuration file.

Procedure

  1. Select a COBOL, PL/I, or C/C++ program in a zComponent project or in a z/OS project that is connected to a Jazz repository, and then right-click and select User Build.
    Tip: For keyboard access to the User Build command press Alt+Ctrl+Shift+Z (Windows) or Ctrl+Option+Command+Z (MacOS). For information about changing the key bindings, see Adding key bindings to the user build action.
    The Configure User Build operation window prompts you for information about loading the main source file and any additional dependencies.
    Configure User Build operation
  2. Select the remote system and a build definition.
  3. In the Resource prefix to load field, specify a prefix for the name of a partitioned data set (PDS). The source file and any dependent files are loaded to this PDS for the build. This prefix is added to the data set definition to construct the partitioned data set name.
    For example, if you specify USERID.USER.BUILD, and the data set definition for the main source file is COBOL, then the source file is loaded into USERID.USER.BUILD.COBOL. If the data set definition for a copybook is COPY, then it is loaded into USERID.USER.BUILD.COPY.
    If the resulting data set names do not exist on the remote system, they are allocated during the build. The values that you specify on the Configure User Build operation window are saved for the next time you request a build for the resource.
  4. Optional: To select dependent files to upload, click Next. To load dependent files, do one of these steps:
    The Additional files to load page shows the list of zComponent projects in the Eclipse workspace.
    1. Manually select dependent files to upload. Expand the projects that contain the files you want to upload and select the files.
      Note: The files that you select are saved for the next time you request a build for the resource. If you select one of the discovery options, all manually selected files are cleared. To recover your manual selections, click Cancel.
    2. Request the user build operation to discover dependent files. Two discovery options are available. You can select either or both.
      • Discover the pending changes to load for building mainFile: The product searches new or changed dependent files that are not yet checked in or delivered.
      • Discover the dependencies to load for building mainFile: The product searches user libraries and team libraries. To see the list of libraries to be searched for dependencies, expand Search order. The Search order field lists the libraries to be searched for dependencies in the order that they are searched. The product searches for dependent files in user libraries first and then in team libraries.
      If the main file is open in an editor, the product also uses the editor's dependency checking function to discover new or changed dependent files that are not yet checked in or delivered. If all dependencies are not loaded into your workspace, then a warning message lists the dependent files that are missing from the workspace.
    When the build job is submitted, the main source file, and any dependent files you specify on this page, are loaded into the PDS. If the PDS does not exist, it is allocated. If the member exists, it is overwritten.
  5. Optional: To delete all files in the dependency libraries of the target user build area before running the build, select Delete the user build dependent libraries (data sets).
    This option deletes only the contents of user libraries. It does not delete team library contents.
  6. Click Finish.
    The product generates JCL statements to run the build steps that are defined in the language definition that is assigned to the main source file. The Job Submission window opens with a message giving the job name. From this window, you can open the job name in the Remote Systems view and set up a job completion notification. For more information about the Job Submission options, see Submitting a job from the Remote Systems or z/OS Projects view.
    Job Submission
    Any compilation errors are shown in the Remote Error List view.