Solutions

DA: How to run DA Component Process on only one resource/agent at a time



ID:    S143377
Published:    19 February 2021

Operating System(s)

  • All Unix
  • All Windows

Product(s)

  • Deployment Automation
 

Description

If a DA component is mapped to multiple resources in the same environment, the expectation is that the component process will run on each of the resources.  In some situations, it is desirable to run on only one resource at a time and then the next until it has run on each resource.  How can this be accomplished. 

Resolution

 The simplest method of restricting the process to one resource at a time is to use the "Max # of concurrent jobs" property in the Install Component Process Step (of the Application).  To change this,

  1. open the Application Process in the design editor.  
  2. Click on or select the process step for "Install Component"
  3. In the Properties panel (on the right-hand side), locate the property called "Max # of concurrent jobs".
  4. The default value for Max # is -1.  This means there is no limit.  Change the value to 1 and the process will run on only 1 resource at a time.
  5. There is a similar parameter on the "Operational Component Process" activities.

Another way to accomplish this is to use resource locks within DA.  This requires the addition of a process step or two to each component process that will participate.  To use this method:

 

  1. Open the Component Process in the design editor.  
  2. In the palette of process steps, locate the step named Utility Steps | Acquire Lock.  Drag this step into the process design, near the top of the process.
  3. While the lock name may be anything, consider this one:  ${p:component.name}-${p:componentProcess.name}-$
    The lock name above includes the component name, the component process name and the environment name.  When the lock is used, no other process will be able to acquire a lock of the same name.  Therefore, this process can only run one at a time within the environment.
  4. Insert the Acquire Lock process step as the first step in the process.  Connect the links for process flow from Start to the following steps.
  5. At the end of the process, add the process step: Utility Steps | Release Lock.
    Use the same lock name (or resource name) as was used above.
  6. Save the component process.
  7. Because the resource lock can only be held by one running process at a time, if more than one try to request the lock, the first will get the lock and others will wait.  One at a time, each will be granted the resource lock.
    NOTE:  Resource locks may also be used at the application level if that makes more sense for your application.

 

Applies To

Release Automation 6.3.2

Rate this Solution

Find Answers

Type a question or describe what you are looking for below

My Recent Searches

Welcome kb sso

Additional Assistance

  • Submit a Case Online
  • FAQs