This extension point can be used to externally add build variables, which are then used for
various parameter expansions by Builders and Publishers. Aside from adding variables
of the fixed name, a typical strategy is to look for specific JobPropertys and other similar configurations
of Jobs to compute values.

BuildVariableContributor

Method Detail

buildVariablesFor

This method can be called repeatedly for the same AbstractBuild, thus
the computation of this method needs to be efficient. If you have a time-consuming
computation, one strategy is to take the hit once and then add the result as InvisibleAction
to AbstractBuild, then reuse those values later on.

This method gets invoked concurrently for multiple Runs that are being built at the same time,
so it must be concurrent-safe.

Parameters:

build - Build that's being performed. Never null.

variables - Partially built variable map. Implementation of this method is expected to
add additional variables here. Never null.