UDeploy properties & component properties along with their contexts

Components can have several types of properties. The server keeps track of changes to component properties as property versions. Properties can be set for many different things, including components, environments, processes, and applications. You can also set global properties for the system.
What properties are available to you depends on the context. For example, in a component process, you can access the component properties of the current component. In an application process, you can access the application properties and environment properties, but not any component properties. The following table shows the processes in which each type of property is available.

The following table lists types of properties that are available to processes and which processes have access to each type of property.

Properties and the processes in which they are available
Property type Processes that can access the property Example syntax
Generic process properties Generic processes ${p:ProcessProp1}
Application process properties Application processes and component processes ${p:ProcessProp1}
Component process properties Component processes ${p:ProcessProp1}
Component version properties Component processes types that include versions, such as Deployment and Operational (with version) ${p:version/VersionProp1}
Resource properties All processes ${p:resource/ResourceProp1}
Environment properties Component processes and application processes ${p:environment/EnvProp1}
Application properties Application processes and component processes ${p:application/AppProp1}
System properties All processes ${p:system/SystemProp1}
Request properties All processes
  • ${p:request.user.id}
  • ${p:request.user.name}
  • ${p:request.user.displayName}
Iteration properties Processes in the For Each Agent step context
  • ${p:interation/agent.name}
  • ${p:interation/agent/AGENT_HOME}
Property contexts
Context Description
environment Available on the component’s or environment’s Properties tab.

Referenced: ${p:environment/propertyName}.

Both versions use the same syntax. A value that is set on component environment overrides one with the same name set directly on an environment property. Component environment properties help you to centralize properties, tracking type and default values, for instance. Environment properties provide ad hoc lists of property=value pairs.

resource Selects all the properties with the same value in an environment.
application Available on the application’s Properties tab (Application > selected application > Properties).

Referenced: ${p:application/propertyName}.

component Selects all properties with the same value in a system.
process Available on the application’s Properties tab (Application > selected application > Properties).

Referenced: ${p:application/propertyName}.

A process step has access to properties set earlier by other steps within the process, to properties set by the application that started the component process, and to properties on the target environment and resource. Step property values become unavailable after the component process ends.

Referenced: ${p:propertyName}.

system System (global) properties are available on the Settings tab (Settings > Properties).

Referenced: ${p:system/propertyName}.

iteration Iteration properties are available within the context of the For Each Agent step. The For Each Agent application process step can run processes for every agent in an environment.

Referenced: ${p:iteration/propertyName}.

 IBM UrbanCode Deploy properties
Property Description
version.name A user-defined name to distinguish the version from others. A version name is entered when a new version is imported.
version.id The number that is assigned to the version. A version id is created when a new version is imported in CodeStation.
component.name A user-defined name to distinguish it from other components. A component name is entered when you create a new component.
component.id A unique number IBM® UrbanCode Deploy assigns to distinguish the component from others. The component id is created when a component is created in IBM UrbanCode Deploy.
resource.name A user-defined name to distinguish it from other resources. The resource name is entered when you edit or create a new resource.
resource.id A unique number that is given to a resource. A resource id is assigned when a new resource is created.
application.name A user-defined name to distinguish it from others. An application name is entered when you edit or create a new application.
application.id A unique number that is given to an application. An application id is assigned when a new application is created in IBM UrbanCode Deploy.
environment.name A user-defined name to distinguish the environment from others. An environment name is entered when you edit or create a new environment.
environment.id A unique number that is given to an environment. An environment id is assigned when a new environment is created.
agent.id A unique number IBM UrbanCode Deploy gives the agent to distinguish it from others with similar names. An agent id is assigned when it is installed on the system.
agent.name A user-defined name to distinguish the agent from others. The agent’s name can be entered by editing the agent’s conf/agent/installed.properties file and restarting the agent.
stepname, propertyname All steps have the following properties: exitCode, status, lines of interest (LOI, items the post-processing script finds in the step’s output log).

You can view the properties by using the component’s Log pane to examine the step’s output log (Components> selected component > Component request history > View Request > Properties).

Inventory and version statuses, which are defined with the status property, can be used in application approval gates . The other properties can be used by post-processing scripts.

You can use post-processing scripts to set output properties that can be used in other steps in the same process, which enables complex workflows. Reference prior step output properties this way:

${p:stepName/propName}

To set an environment property from a post-processing script, for example, you set the output property for the step in the post-processing script. Then you use a Set Environment Property step that consumes the output property.

property_name Component or application process property; defined on the process’s Properties tab. Given value by whoever runs the process.
component/property_name Component custom property; set on the component’s Properties tab.
environment/property_name Environment property. Defined on the component’s or environment’s Properties tab. While both use the same syntax, the latter is not associated with any specific component. Values are supplied on the associated environment or component. A value that is set on component environment overrides one with the same name set directly on an environment property.
resource/property_name Resource properties. These properties can include the built-in agent properties and any custom properties. Each of these properties has a tab on the resource.
resource/role_name/property_name Resource role properties. These properties are defined on resource roles, and the values are set when you add a role to a resource.
application/property_name Application custom properties. These properties are set on the application’s properties tab.
system/property_name Global system properties. These properties are set on the System Properties tab in the Settings area.
iteration/property_name For Each Agent context properties. These properties exist within the For Each Agent step context.

All of the following are comma-separated series of name=value pairs, including each property on the object. This is useful for token replacement.

Name-value pairs
Property Description
component/allProperties Selects all the properties with the same value in a component.
environment/allProperties Selects all the properties with the same value in an environment.
resource/allProperties Selects all properties with the same value in a resource.
system/allProperties Selects all properties with the same value in a system.
iteration/allProperties Selects all properties with the same value in a For Each Agent context.