The Lock plugin is a XL Deploy plugin that adds capabilities for preventing simultaneous deployments.
This document describes the functionality provided by the XLD Lock plugin.
See the XL Deploy reference manual for background information on XL Deploy and deployment concepts.
The XLD Lock plugin is a XL Deploy plugin that adds capabilities for preventing simultaneous deployments.
SERVER_HOME/plugins
directory. Following options are available:
XLDEPLOY_HOME
environment variable to be set). For example: XLDEPLOY_HOME=/opt/xldeploy/xl-deploy-4.0.1/xl-deploy-4.0.1-server
When a deployment is configured, the Lock plugin examines the CIs involved in the deployment to determine whether any of them must be locked for exclusive use. If so,
it contributes a step to the beginning of the deployment plan to acquire the required locks. If the necessary locks can’t be obtained, the deployment will enter a PAUSE
state and can be continued at a later time. If the enviroment to which the deployment is taking place has its enableLockRetry property set, then the step will wait for a period of time before retrying to acquire the lock.
If lock acquisition is successful, the deployment will continue to execute. During a deployment, the locks are retained, even if the deployment fails and requires
manual intervention. When the deployment finishes (either successfully or is aborted), the locks will be released.
The locks plugin adds synthetic properties to specific CIs in XL Deploy that are used to control locking behavior. The following CIs can be locked:
Each of the above CIs has the following synthetic property added:
The udm.Environment has the following additional synthetic properties :
Each lock is stored as a file in a directory under the XL Deploy installation directory. The lock.Manager CI can be created in the Infrastructure section of XL Deploy to list and clear all of the current locks.