Skip to content

Parameter Precedence

What is the order precedence for parameters?

Solution

A parameter is looked up from the top to bottom of this list:

  • Machine Parameter
  • Machine Profile (or profiles in that profile).
  • Stage Parameter
  • Stage Profile
  • Global Profile Parameter
  • Global Profile Profile
  • Parameter default.

This is handled by the template render engine. Values at the top of the list will replace values lower in the list.

You can see the state on a machine (except parameter defaults) by doing:

drpcli machines params <Machine ID> --aggregate

Note

It is possible that a Paramter can be defined as "Composed", which will NOT follow the Paramter Order of Precedence. The values will be built up from each of the levels of precedence and combined.

This is defined in the Template with the use of the {{ .ComposeParam ... }} and associated functions in the Architecture Documentation Template (link also below).

Additional Information

The drpcli command line argument --aggregate will not show any Params default volues in the output.

To view what the default value of a param is you can find it in the UX by clicking on the Param navigation link on the left side of the screen, then searching for the param, then clicking on it. You can also use a simple drpcli command.

$ drpcli params show burnin-skip|jq .Schema
{
  "default": false,
  "type": "boolean"
}

See Also

  • Architecture Data Template documentation (Compose Param docs)

Versions

Keywords

param, param precedence, workflow

Revision Information

KB Article     :  kb-00057
initial release:  Thu 26 Jan 2021 15:55:25 PM CST
updated release:  Thu 28 Jan 2021 08:57:00 AM CST