Checking Item Revisions are at the Requested Deployment Level

You can start a build from a single source or from a set of sources, for example, all the sources related to a request. For a work area, you can populate the area prior to the build starting. For deployment builds, the area should already be populated by Dimensions during deployment so that you can only build the versions that already exist in the area.

In previous releases of Dimensions, the population of a work area was always from the tip version of the sources in the project and not the version you actually chose to build. This was a problem as you were not actually building what you requested. For deployment areas you could not control what was in the area. If you chose a revision of a source that was not at the deployment level that you going to build, you were not notified and ended up building whatever level of source happened to be in the deployment area at the time. This was not necessarily the version that you selected.

Dimensions Build now works as follows:

- For work areas, Dimensions pushes the source revision that you selected or the revisions that are related to the request. Therefore you can build exactly what you requested and not the tip.

- For deployment areas, Dimensions checks that the item revision of the source at the requested deployment level is actually there. This is not a physical check on the build area, rather a verification on the server about what should be there. If it is not, Dimensions displays an error message during the build launch notifying you that the version you requested to build is not currently in the area that you have requested to build it in. For information about configuring the build error messages, see below.

Configuring Build Error Messages

A build fails if one or more of the following conditions are met:

- The source file is missing from the search path.

- The source file has a higher revision number than the one that was requested.

- The source file has a lower revision number than the one that was requested.

- The source file is missing from the project/stream.

- The item specification of the source file is wrong.

You can control these errors as follows:

- (Default) To turn off all error messages, display warnings instead, and allow the build to proceed, set the symbol DM_BLD_ERROR_INVALID_REVISIONS in the Dimensions configuration file to ’N’:

DM_BLD_ERROR_INVALID_REVISIONS N

Note: If you do not set the symbol the behavior is the same.

- To turn on all error messages and stop the build, set the symbol DM_BLD_ERROR_INVALID_REVISIONS in the Dimensions configuration file to ’Y’:

DM_BLD_ERROR_INVALID_REVISIONS Y

- To apply more control over which errors stop a build and which do not, specify the appropriate hexadecimal number in the symbol DM_BLD_GETSRC_FUNCTION_OR in the Dimensions configuration file:

  Warning | Hexadecimal Number | Behavior
  --- | --- | ---
  NOFAIL_MISSING | 0x00100000 | Do not fail if the source file is missing from the search path.
  NOFAIL_NEWER | 0x00200000 | Do not fail if the source file has a higher revision number than the one that was requested
  NOFAIL_OLDER | 0x00400000 | Do not fail if the source file has a lower revision number than the one that was requested.
  NOFAIL_NOITEM | 0x00800000 | Do not fail if the source file is missing from the project/stream.
  NOFAIL_SPEC | 0x01000000 | Do not fail if the item specification of the source file is wrong

For example, if the only warning that you require is NOFAIL_NEWER, specify the value 00200000:

DM_BLD_GETSRC_FUNCTION_OR 00200000

You can create compound selections by adding together hexadecimal numbers. This example turns the NOFAIL_NEWER and NOFAIL_OLDER errors into warnings:

DM_BLD_GETSRC_FUNCTION_OR 00600000

NOTE If you use DM_BLD_GETSRC_FUNCTION_OR it overrides the settings in DM_BLD_ERROR_INVALID_REVISIONS.

For more details about the symbol DM_BLD_ERROR_INVALID_REVISIONS see Dimensions Configuration Symbols.