If you have just started working with vRealize Automation, you will notice that you can apply custom properties to many elements. While this is great and add a lot of flexibility to the product and make it easier to customize the product to do things differently in the way you desire. It can get confusing which property will precede/over write the other one, if a duplicate property with a different value was assigned at a different element/level. In this post, I wanted to highlight the order of Precedenc for Custom Properties in vRA, so you can predict your results.
The full order of precedence for custom properties is that any property value specified in a source later in the list overrides values for the same property specified in sources earlier in the list. The order is shown in the following list:
Order of applying Custom Properties, later one over write earlier one:
- Build Profile
- Blueprint
- Business Group
- Compute resource
- Reservation
- Endpoint
- Runtime
Note: Please note only Build Profile, Blueprint, and Business Group custom properties are assigned at the request time, while most other custom properties (Comput resources, reservation, & Endpoint) are assigned during provisioning, as they are not being assigned till the provisioning process has been started.
Note: If you have multiple build profiles that have duplicate custom properties assigned to a blueprint, the later build profiles in the list, will over write preceding ones.
For vApps, the order is similar, as shown in the following list:
- Build profile, specified on a vApp component blueprint
- vApp component blueprint
- Build profile, specified on a vApp blueprint
- vApp blueprint
- Business group
- Compute resources
- Reservations
- Endpoint
- Runtime specified on a vApp
- Runtime specified on a component machine
Any runtime property takes higher precedence and overrides a property from any source. A custom property is marked as runtime if the following conditions exist:
- The property is marked as Prompt User, which specifies that the user must supply a value for it when requesting a machine. This requires that the machine requestor customize individual characteristics of each machine, or gives them the option of doing so when a default value is provided for the required property.
- A business group manager is requesting a machine and the property appears in the custom properties list on the Properties tab of the Confirm Machine Request page.
Hope this help!