Property Priority Order of precedence

If a uDeploy property is defined in multiple places, its value is determined by the property priority or order of precedence. The following list defines the order of precedence from highest to lowest:

– Process
– Component version
– Resource
– Agent
– Environment
– Component
– Application
– System

If you have an environment property named ${p:environment/app.url} and a resource property with the same name, you can refer to the resource property by using ${p:app.url} or ${p:resource/app.url}.

Because the resource property is higher on the order of precedence than the environment property, in this case you must refer to the environment property by using the scoped format: ${p:environment/app.url}.

Anyway if you have a Replace Tokens Step, priority depends on the order of the Property List . Let’s suppose to have an environment property and an agent property with same name: hostname.fqdn

If Property List is like:


agent property will win.

If Property List is like:


environment property will win.

Handle multiple Websphere Application Server profiles with uDeploy

Do you have multiple WAS profile on the same host? Let’s see how to handle this configuration with uDeploy.

Go to Resources -> Agents -> [Click your WAS multi profiles host agent] -> Configuration -> Agent Properties.

Add the Property Name: websphere.profilePath and fill the value with the path of WebSphere Application Server profiles.

Eg. /usr/IBM/WebSphere/AppServer/profiles

Go to Resources -> Resource Tree and create a Top-Level Group.

Click beside the Top-Level Group: Actions -> Add Agent

Click Refresh link below.

Your Deployment Manager Profiles will appear.

For each WebSphereCell Dmgr click Configuration -> Basic Settings. Add missing values like, Cell Name, WebSphere User and Password, SOAP Port.

Go back to Resource Tree, click Actions beside each Dmgr profiles and click: Configure Using WebSphere Topology Discovery.

Your Cell topology will appear in a few seconds.

Stop WebSphere Application Server with uDeploy

When you want to stop a Cluster or a Server you need a component process well designed or your application process can fail.

Start with a Check Status step. It checks the status of the Server/Cluster and fails if the Server/Cluster is already stopped.

The second step, Stop Server, it doesn’t need explanations.

Then Wait for server or cluster to stop.
Here you can set the:
– Timeout (seconds) to wait for the server or cluster to stop before the step fails.
– Interval (seconds): The time to wait between status checks.

Finally, in case of Wait for Server/cluster to stop timeout we add a Terminate Server/Cluster step.

Have a nice day!

Add Target to Module with uDeploy aka Map Module to Server

There is an excellent article written by Lara Ziosi (you can find it here) which inspired me to write this post and showing you how to add Target to Module with uDeploy.

In our scenario we have a WebSphere Application Server cell and we are going to install an ear and map a Web Module to a Web Server target.

Usually during ear installation  the target is an Application Server or Cluster but sometimes we need to map our application also to a Web Server like IHS, Apache or something else.

First of all create a component of type “WebSphere Enterprise Application”, then create two component processes. The first is a classic deploy process ( see Install Enterprise Application on WebSphere Application Server with uDeploy)  while the second :  “Add target To Module” has just one step:  “Add Target to Module” from the “Application Deployment for WebSphere plug-in“.

Simply fill the Module URI property with the Uri of the module. For example: ALPHA_WAR.war,WEB-INF/web.xml

Continue readingAdd Target to Module with uDeploy aka Map Module to Server

Use Precondition in uDeploy

Most steps in a process can have a precondition. The precondition determines whether the step runs.

Preconditions return Boolean values. If the precondition returns True, the step runs as usual. If the precondition returns anything other than True, the process skips that step.

Suppose we need to create a symlink but only under certain conditions. We create a Shell step:

Continue reading “Use Precondition in uDeploy”

How to update configuration files with UrbanCode Deploy

How often do you need to update configuration files of your applications?
Do you need to automate this process? Let me show you how to do it with uDeploy.

We have a component and we are going create a component process.

Create a Shell step and call it “Clean Working Directory”. Then create a “Download Artifacts” and a “Replace Tokens” steps with properties below.

Clean Working Directory properties

Continue reading “How to update configuration files with UrbanCode Deploy”

Changing the JRE of UrbanCode Deploy Server and Agents

Beginning in version 6.2.2, the IBM UrbanCode Deploy Server (and agent relays) require Java Runtime Environment (JRE) or Java Development Kit (JDK) version 8.

Are you planning an update of your uDeploy Server and Agents? Do you have an old JRE?  Here the steps to update you JRE*:

*The new JRE must be from the same vendor as the current JRE

Changing or updating the JRE of Server
  • Install the new JRE
  • Stop the Server
  • Update the location of the JRE in the following files:
    • In the file

      set the value of the JAVA_HOME system variable to the location of the JRE.

    • In the file

      set the value of the property to the location of the JRE.

  • Start the Server

Continue reading “Changing the JRE of UrbanCode Deploy Server and Agents”

Execute wsadmin Script with UrbanCode Deploy

The WebSphere Application Server wsadmin tool provides the ability to automate configuration tasks for your environment . It supports a full range of product administrative activities such as configure and administer application servers, application deployment, and server runtime operations.

UrbanCode WAS Deploy plugin has a step called:  Execute wsadmin Script

Open the step:

Continue reading “Execute wsadmin Script with UrbanCode Deploy”

Environment Gates & Version Statuses

Do you want to take control on which version of your application can be deployed into Production environment? IBM UrbanCode Deploy Environment Gates and Version Statuses can help you.

This example will show you how to define policies to allow Production deploy only if application has passed QA environment deploy.

Go to Settings -> Statuses

Add a new Version Status and name it:  QA PASSED

Continue reading “Environment Gates & Version Statuses”