Interface DeploymentPlan
-
- All Known Implementing Classes:
DeploymentPlanImpl
public interface DeploymentPlan
Encapsulates an overall set of actions aDomainDeploymentManager
should take to update the set of deployment content available for deployment in the domain and/or change the content deployed in the domain's servers.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description List<DeploymentAction>
getDeploymentActions()
Gets the list of deploy, replace and undeploy actions that are part of the deployment plan.long
getGracefulShutdownTimeout()
Gets the maximum period, in ms, the deployment set plan is configured to wait for potentially long-running in-process work ito complete before shutdown proceeds.UUID
getId()
Gets the unique id of the plan.List<Set<ServerGroupDeploymentPlan>>
getServerGroupDeploymentPlans()
Gets the configuration of how thedeployment actions
are to be applied to the server groups in the domain.boolean
isGracefulShutdown()
Gets whether the deployment set plan is organized around a graceful shutdown of the server, where potentially long-running in-process work is given time to complete before shutdown proceeds.boolean
isRollbackAcrossGroups()
boolean
isShutdown()
Gets whether the deployment set plan is organized around a shutdown of the server.boolean
isSingleServerRollback()
Indicates that on a given server alldeploy
,undeploy
orreplace
operations associated with the deployment set should be rolled back in case of a failure in any of them.
-
-
-
Method Detail
-
getId
UUID getId()
Gets the unique id of the plan.- Returns:
- the id. Will not be
null
-
getDeploymentActions
List<DeploymentAction> getDeploymentActions()
Gets the list of deploy, replace and undeploy actions that are part of the deployment plan.- Returns:
- the actions. Will not be
null
-
isSingleServerRollback
boolean isSingleServerRollback()
Indicates that on a given server alldeploy
,undeploy
orreplace
operations associated with the deployment set should be rolled back in case of a failure in any of them.Note: This directive does not span across servers, i.e. a rollback on one server will not trigger rollback on others. Use
ServerGroupDeploymentPlanBuilder.withRollback()
to trigger rollback across servers.- Returns:
- a builder that can continue building the overall deployment plan
-
isRollbackAcrossGroups
boolean isRollbackAcrossGroups()
-
isShutdown
boolean isShutdown()
Gets whether the deployment set plan is organized around a shutdown of the server.- Returns:
true
if the plan will be organized around a shutdown,false
otherwise
-
isGracefulShutdown
boolean isGracefulShutdown()
Gets whether the deployment set plan is organized around a graceful shutdown of the server, where potentially long-running in-process work is given time to complete before shutdown proceeds.- Returns:
true
if the plan will be organized around a graceful shutdown,false
otherwise
-
getGracefulShutdownTimeout
long getGracefulShutdownTimeout()
Gets the maximum period, in ms, the deployment set plan is configured to wait for potentially long-running in-process work ito complete before shutdown proceeds.- Returns:
- the period in ms, or
-1
ifisGracefulShutdown()
would returnfalse
-
getServerGroupDeploymentPlans
List<Set<ServerGroupDeploymentPlan>> getServerGroupDeploymentPlans()
Gets the configuration of how thedeployment actions
are to be applied to the server groups in the domain. EachServerGroupDeploymentPlan
in the returned data structure specifies how the actions are to be applied to the servers within a particular server group. The data structure itself is a list of sets of ServerGroupDeploymentPlans. Each set indicates a collection of server groups to which actions can be applied concurrently. Each element in the overall list delineates actions should be applied in series.So, for example, assume we the overall deployment set plan is intended to apply deployments to 3 server groups:
A
,B
andC
. Assume elements within curly braces represent and set and elements within brackets represent an item in a list:-
[{A,B}],[{C}]
would describe a plan to concurrently execute the deployment actions on server groups A and B and then when A and B are complete, continue on to server group C. -
[{A}],[{B}],[{C}]
would describe a plan to execute the deployment actions on server group A, and then when A is complete, continue on to server group B and then to C. -
[{A,B,C}]
would describe a plan to concurrently execute the deployment actions on server groups A and B and C.
- Returns:
- data structure representing how the
deployment actions
are to be applied to the server groups in the domain.
-
-
-