Trigger variables reference

The system watches for the following variable names. When a step's environment contains one of them, either specifically or inherited from a project or server, actions are performed.

Variable

Contents

_CI_BUILD_DELETE

Set this variable to any value to delete the build and associated build data after the job runs. (The tag variable is reset to its initial value, prior to the deleted build, if no other project builds ran.)

_CI_BUILD_KEEP

Set this variable to any value to keep the build and associated build data after the job runs. For example, if your job includes an adaptor link and the adaptor step fails, the other project steps do not run. You might want to keep a copy of the build records for the job, for example, for debugging.

CLEARCASE_VIEW

Starts the specified ClearCase view. The view specified in this variable must exist, and the step using this variable must be set to "absolute". On systems running Microsoft Windows, this variable must be used with the cc_suppress_server_root configuration option for the agent in bfagent.conf.

_CLEARCASE_VIEWS

Specifies a list of ClearCase views to start before command execution. Set the value to a comma-separated list of views; for example, View1,View2,View3.

_CLEARCASE_VOBS

Specifies a list of ClearCase VOBs to mount before command execution. Set the value to a comma-separated list of VOBs; for example, \Vob1,\Vob2,\Vob3.

_CONTEXT_LOG_RANGE

Use this variable to limit log output to lines near filter matches. It takes a positive integer value, and causes the system to omit log output except for a range of lines around each filter string hit whose size is equal to the variable's value. For example, if you set the variable to 5, your logs show only lines with filter matches, plus the 5 lines preceding and 5 lines following those matches.

Note: This variable is used for Perl engine projects only.

_ERROR_THRESHOLD

Establishes the maximum number of errors (caught by the Set Fail filters you have defined) allowed. Using this variable, you can establish failure and message thresholds for individual steps or for a project.

Use one of the following forms:

  • A value of 5 or F5 indicates that the job should fail if more than 5 errors occur.
  • A value of N7 indicates that the system should add a message to the job notes when more than 7 errors occur. The message indicates that this threshold was met.

When you use the variable in a step, the system counts the errors in the individual step. Additional forms are available:

  • A value such as W9 indicates that after 9 errors, the step is put in a warning state, regardless of future errors caught by filters.
  • A value such as C8 indicates that after 8 errors, the step is set to failure status, but any Clear Fail filter can clear the failure.

NOTE: The errors counted by this variable are defined as strings that match filters with Set Fail actions and which are assigned to steps in the project. Each string identified as a failure by a filter counts as one error toward the step total, and one toward the project total.

_EXITCODE_MAP

Specifies a list of numbers (separated by commas, spaces, semicolons, or colons) that the system should accept as indicators of step success. By default, an exit code of 0 indicates success; when this variable is specified, any values listed in it also indicate success.

_InterfaceLoggingLevel

Controls how much log data Build Forge logs when it runs an adaptor step. Create an environment variable (in your adaptor environment) with the name _InterfaceLoggingLevel. Assign it an integer value from 0 to 8. Logging levels are inclusive, for example, level 2 includes information from levels 1 and 0.
  • 0: Exec line plus server connection errors or cancel notification; nothing else
  • 1: Parsed commands (commands as they will be sent to the server)
  • 2: Unparsed commands (commands prior to having their local variables set)
  • 3: Build and environment variable SET lines
  • 4: Temp and internal variable SET lines
  • 5: Environment evaluations, email group additions, BOM text logging lines
  • 6: Block & Sub-block start/end lines
  • 7: (Default logging level) Agent output that is checked against match patterns, plus the lines that matched the patterns.
  • 8: All agent output

_LOG

Specifies a path name to create a log file containing the Build Forge Agent's raw output.

Note: This log does not include time stamps unless _LOG_TIMESTAMP is also specified. The log data in this file is typically formatted as such: agent code, log bucket, and message.

Use this variable to save a copy of the job log on the server. If the file exists, the system appends to it.

_LOG_TIMESTAMP

Prefixes each line of output from _LOG with a timestamp. The value of this variable should be a format string in the same strftime syntax that is used by the .date and .gmdate environment commands.

Note: Requires _LOG.

_MAP

See Mapping Windows drives for a discussion of how to use this variable.

_NO_PREPARSE_COMMAND

The system normally attempts to resolve the values of environment variables before sending commands to agents. When the _NO_PREPARSE_COMMAND variable is defined (with any value), the system sends variables to agents without resolving them. Use this variable to ensure that your operating system shell handles the variables.

_PRISM_DIR_POSTCMD

Used with plug-ins for IDEs. Specifies a command to be run on directories after the project step has run. See Special variables for test projects.

_PRISM_DIR_PRECMD

Used with plug-ins for IDEs. Specifies a command to be run on directories before they are copied to the server for a project step. See Special variables for test projects.

_PRISM_FILE_POSTCMD

Used with plug-ins for IDEs. Specifies a command to be run on files after the project step has run. See Special variables for test projects.

_PRISM_FILE_PRECMD

Used with plug-ins for IDEs. Specifies a command to be run on files before they are copied to the server for a project step. See Special variables for test projects.

_SUPPRESS_ENV_OUTPUT

Specifies that the system omit the environment messages from the log. By default, this variable is not set and all variable values in the environment are printed before a step command runs. The values appear as ENV entries in the step log. The variable can be set to the following values:
  • ALWAYS: always omit the ENV messages
  • Any other value: omit the ENV messages. However, if the command fails, the ENV messages are printed after the command message. This information may be useful in debugging the command execution failure.

_SUPPRESS_AGENT_LOG_OUTPUT

When set to 1, prevents the agent from sending log data to the engine. Compare to _SUPPRESS_LOG_OUTPUT, where log data is sent from the agent but dropped by the engine.

Note: Using this variable prevents filter matches.

_SUPPRESS_LOG_OUTPUT

Setting this variable to any value causes the engine to drop almost all of the log output received from the agent. Some console log messages remain. Filter matches are shown.

_TIMEOUT

A value that overrides the Timeout property for one or all of the steps in your project.

_TRAP

A string to run if the current step fails; the string can be set to the name of an executable file or command. NOTE: The output of the command is not returned to the console because the connection between the console and the agent is closed when the step fails; if you want to retain output from a command issued through _TRAP, have the command write its output to a file for later retrieval.

_USE_BFCREDS

When set to 1, the system uses the user's login credentials to log in to servers, rather than the credentials stored in the server authorization attached to server. The system uses the Management Console login credentials of the user who started the project to run the commands in the project. You can set this variable for a single step, or for an entire project.
Note: If you are using LDAP/Active Directory authentication, the Store User Authentication Locally system setting must be set to Yes (its default value) for the _USE_BFCREDS function to work. When the setting is Yes, the system caches user authentication information in encrypted form, and can then access the user authentication information for use with _USE_BFCREDS.
Tip: On Windows, consider setting the variable _USE_BFCREDS_DOMAIN as well.

_USE_BFCREDS_DOMAIN (Windows only)

When set to 1, the system uses the user's domain in addition to the login credentials that _USE_BFCREDS uses to log in to servers.

_XSTREAM_PROTOCOL type

Enables direct file transfers between agents.
Important: Agents on some operating systems have limited or no support for direct file transfer. See Configuring direct file transfer between agents.

The engine, sending agent, and receiving agent must all support direct file transfers. If any do not, then _XSTREAM_PROTOCOL is ignored without warning and the normal file-transfer method is used.

Receiving agents must be able to create TCP connections on the sending agent host. If they exist, firewalls must be configured to allow connections.

The protocol type determines the method of encoding data and is one of the following:

AES-CBC
Cryptographically strong algorithms are used to encode the data. Both agents must be compiled with OpenSSL and use SSL in communicating with the engine. The encryption key is obtained from the engine.
PRNG
A pseudo-random number generator is used to obscure the file contents.
PLAIN
Files are transferred as-is without encoding.