The following cases affect inheritance.
- Inline projects
- A step inlines a project by specifying a project in the Inline property
for the step. When a step inlines a project, the called project's
server environment and project environment are not used. Inheritance
goes in this order:
- The server environment for the calling step.
- The project environment for the calling step.
- The step environment for the calling step.
- For each step in the called project, the step environment (if
specified).
- Chained projects
- A project or step can specify a project as a Pass Chain or Fail
Chain. When a project is called in that way, it runs in its own environment.
In addition, it has access to all of the variables from the calling
project or calling step. Those variables are copied to new names using
the prefix BF_CALLER_. Example: the variable BF_NAME in the calling
project or step is available as BF_CALLER_BF_NAME in the called project
and steps.
- Scheduled jobs
- When a project is on a schedule in Schedules,
you can choose to apply a different environment to the project than
what is set by default. Once the environment is specified, the Environment tab
can be used to set values for variables in that environment. The variables
are presented in the Environment tab according
to their On Project property setting. They
follow the same rules as they would if presented for a non-scheduled
job start.
- Overriding inheritance order
- Use system setting Apply server environment last to
override inheritance order. If its value is Yes, then the inheritance
order is set as follows:
- Project environment
- Step environment
- Server environment