com.xebialabs.deployit.plugin.wls.runbook
Class WlsDeploymentRunBook
java.lang.Object
com.xebialabs.deployit.util.SingleTypeHandlingRunBook<com.xebialabs.deployit.ci.Deployment>
com.xebialabs.deployit.plugin.wls.runbook.WlsDeploymentRunBook
- All Implemented Interfaces:
- com.xebialabs.deployit.RunBook
public class WlsDeploymentRunBook
- extends com.xebialabs.deployit.util.SingleTypeHandlingRunBook<com.xebialabs.deployit.ci.Deployment>
- implements com.xebialabs.deployit.RunBook
Supports the initial deployment, re- and undeployment of packages to a WLS Cluster, as well as
modifications to the targeted Managed Servers required for the application.
Conditions
This runbook will trigger if the change plan contains the
- addition of a new
Deployment CI
- modification of an existing
Deployment CI
- deletion of an existing
Deployment CI
where the deployment package contains WLS resources or if components (e.g. EARs are
targeted at WLS middleware components.
The runbook will also handle changes to the following properties of Managed Servers to which a
resource has been targeted in the current change plan:
Modification of other properties of Managed Servers, or of servers which are not targeted by the
current deployment, are not supported.
Update Semantics
If the runbook triggers because an existing Deployment has been modified, the contents of the previous
deployment package are compared with the contents of the new package and the following actions are performed:
- if the new deployment package does not contain an element that was present in the previous package, this
is removed from the environment
- if the new deployment package contains an element that was not present in the previous package, it is
added
- for binary resources (
EARs, ConfigurationFiles etc.) that are contained in
both the new and previous packages, the current resource is removed and the new one
added
- for configuration resources (
JMS Queues, JDBC Datasources
etc.) that are contained in both the new and previous packages, the current resource is
modified if its properties in the new package do not match those in the previous package
Actions
TODO: Step sequence. Note that JMS Queues are not deleted if non-empty.
| Methods inherited from class com.xebialabs.deployit.util.SingleTypeHandlingRunBook |
resolve |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface com.xebialabs.deployit.RunBook |
resolve |
WlsDeploymentRunBook
public WlsDeploymentRunBook()
resolve
protected void resolve(com.xebialabs.deployit.Change<com.xebialabs.deployit.ci.Deployment> change,
com.xebialabs.deployit.ChangePlan changePlan,
java.util.List<com.xebialabs.deployit.Step> steps)
- Specified by:
resolve in class com.xebialabs.deployit.util.SingleTypeHandlingRunBook<com.xebialabs.deployit.ci.Deployment>
isWlsDeployment
private boolean isWlsDeployment(java.util.Set<WlsCluster> targetClusters,
java.util.Set<WlsServer> targetServers)
sortQueueMappings
private void sortQueueMappings(WlsJmsQueueToWlsServerMapper queueMapper)
activateChanges
private void activateChanges(java.util.List<com.xebialabs.deployit.Step> steps,
java.util.Set<WlsDomain> domains)
restartServersRequiringRestart
private void restartServersRequiringRestart(java.util.List<com.xebialabs.deployit.Step> steps,
java.util.Set<WlsDomain> domains)
findServerChangesForDeploymentChange
private java.util.Set<com.xebialabs.deployit.Change<WlsServer>> findServerChangesForDeploymentChange(com.xebialabs.deployit.ChangePlan changePlan,
com.xebialabs.deployit.Change<com.xebialabs.deployit.ci.Deployment> deploymentChange,
java.util.Set<WlsServer> oldTargetServers,
java.util.Set<WlsServer> newTargetServers)
getChangesForCiType
private java.util.Set<com.xebialabs.deployit.Change> getChangesForCiType(com.xebialabs.deployit.ChangePlan cp,
java.lang.Class<? extends java.io.Serializable> changeTypeClass)
Copyright © 2010. All Rights Reserved.