Resolving dependencies from components in a different stream

You can enable this feature to be able to resolve and compute the dependencies for the programs to be built from additional flows other than the build stream. These additional flows are configured in the build workspace. By doing so, libraries that are used in various applications can then be seamlessly integrated into the build without the need to add them to the application's stream. Source code data for the additional flows is computed along with the build stream one at build time.

About this task

By default, the feature is disabled on the existing build definitions.

Procedure

  1. Add the additional flow to the build workspace. You must have the appropriate permissions to do so.
    1. Open the build workspace. To do so, you can open the build definition in the project area, switch to the Jazz Source Control tab and click the workspace hyperlink.
    2. Modify the flow configuration. In the Repository Workspace tab, scroll down to the Flow Targets section, select Add and add the stream that contains the component with sources to consider during the build process. You can scope this new added flow for just a set of the components that it contains to avoid unnecessary processing.

      You must not modify the stream that is set as the current incoming flow for the build workspace because you would effectively change the stream that the build definition builds.

      The following screen capture shows an example build workspace where a new flow, named Common, has been added. The Dev flow is the actual build stream.

      The Flow Targets section.

  2. Enable the additional build computation in the build definition.
    1. Open the build definition.
    2. Switch to the z/OS Dependency Build or the IBM i Dependency Build tab, depending on the type of dependency build created.
    3. In the Dependency Options subtab, select the option Consider additional flows when resolving dependencies.
    The option to enable the additional build computation in the build definition.

Results

You must be aware of the impact of the feature on the preview and the personal builds.

  • A preview build provides information about what is to be built based on the changes that are delivered to the build stream. It does not modify the state of the build workspace. When the build definition is enabled to consider inputs from additional flows, the preview build gathers information about which changes would be delivered from the additional flows to the build workspace, and consider them when computing inputs and impacts for the build preview
  • A personal build is impacted in the following way:
    • If the full minimum load option is not selected (default), only the differences between the personal workspace and the build workspace are loaded. Any other sources, such as copybooks, are read from the team sandbox from a previous team build. Therefore, if inputs from additional flows are needed to build the programs, they must be in the team sandbox as a result of a previous team build.
    • If the full minimum load option is selected, both the sources and dependencies are loaded from the personal workspace. If the programs to be built in the personal build need inputs that are resolved from additional flows in the workspace, the components must be included in the personal workspace

For information about the impact of the feature in a work item and component promotion, see Work item promotion and Component promotion.


video icon Video

Jazz.net channel
Software Education channel

learn icon Courses

IoT Academy
Skills Gateway

ask icon Community

Jazz.net
Jazz.net forums
Jazz.net library

support icon Support

IBM Support Community
Deployment wiki