In several deployment scenarios, a component needs the property value of another component to customize itself. You can bind properties of XaaS, machines, Software, and custom properties to other properties in a blueprint.

For example, your software architect might modify property definitions in the life cycle scripts of a WAR component. A WAR component might need the installation location of the Apache Tomcat server component, so your software architect configures the WAR component to set the server_home property value to the Apache Tomcat server install_path property value. As the architect assembling the blueprint, you have to bind the server_home property to the Apache Tomcat server install_path property for the Software component to provision successfully.

You set property bindings when you configure components in a blueprint. On the Blueprint page, you drag your component onto the canvas and click the Properties tab. To bind a property to another property in a blueprint, select the Bind checkbox. You can enter ComponentName~PropertyName in the value text box, or you can use the down arrow to generate a list of available binding options. You use a tilde character ~ as a delimiter between components and properties. For example, to bind to the property dp_port, on your MySQL software component, you could type mysql~db_port. To bind to properties that are configured during provisioning, such as the IP address of a machine or the host name of a Software component, you enter _resource~ComponentName~PropertyName. For example, to bind to the reservation name of a machine, you might enter _resource~vSphere_Machine_1~MachineReservationName.

Figure 1. Bind a Software Property to the IP address of a machine

Bind a software property to a machine IP address property.