public ServerGroupDeploymentPlan createRollback() { return new ServerGroupDeploymentPlan(serverGroupName, true, rollingToServers, maxFailures, maxFailurePercentage); }
private ModelNode createServerGroupPlan(ServerGroupDeploymentPlan sgdp) { ModelNode result = new ModelNode(); result.get("rolling-to-servers").set(sgdp.isRollingToServers()); if (sgdp.isRollback()) { if (sgdp.getMaxServerFailurePercentage() > 0) { result.get("max-failure-percentage").set(sgdp.getMaxServerFailurePercentage()); } else { result.get("max-failed-servers").set(sgdp.getMaxServerFailures()); } } else { result.get("max-failure-percentage").set(100); } return result; }
private Set<String> getServerGroupNames(DeploymentPlan plan) { Set<String> names = new HashSet<String>(); for (Set<ServerGroupDeploymentPlan> sgdps : plan.getServerGroupDeploymentPlans()) { for (ServerGroupDeploymentPlan sgdp : sgdps) { names.add(sgdp.getServerGroupName()); } } return names; }
@Override public ServerGroupDeploymentPlanBuilder allowPercentageFailures(int serverFailurePercentage) { DeploymentSetPlanImpl setPlan = getCurrentDeploymentSetPlan(); ServerGroupDeploymentPlan groupPlan = setPlan.getLatestServerGroupDeploymentPlan(); if (groupPlan == null) { throw ControllerClientLogger.ROOT_LOGGER.notConfigured(ServerGroupDeploymentPlan.class.getSimpleName()); } groupPlan = groupPlan.createAllowFailurePercentage(serverFailurePercentage); setPlan = setPlan.storeServerGroup(groupPlan); return new ServerGroupDeploymentPlanBuilderImpl(this, setPlan); }
@Override public ServerGroupDeploymentPlanBuilder allowFailures(int serverFailures) { DeploymentSetPlanImpl setPlan = getCurrentDeploymentSetPlan(); ServerGroupDeploymentPlan groupPlan = setPlan.getLatestServerGroupDeploymentPlan(); if (groupPlan == null) { throw MESSAGES.notConfigured(ServerGroupDeploymentPlan.class.getSimpleName()); } groupPlan = groupPlan.createAllowFailures(serverFailures); setPlan = setPlan.storeServerGroup(groupPlan); return new ServerGroupDeploymentPlanBuilderImpl(this, setPlan); }
@Override public RollbackDeploymentPlanBuilder withRollback() { DeploymentSetPlanImpl setPlan = getCurrentDeploymentSetPlan(); ServerGroupDeploymentPlan groupPlan = setPlan.getLatestServerGroupDeploymentPlan(); if (groupPlan == null) { throw MESSAGES.notConfigured(ServerGroupDeploymentPlan.class.getSimpleName()); } groupPlan = groupPlan.createRollback(); setPlan = setPlan.storeServerGroup(groupPlan); return new RollbackDeploymentPlanBuilderImpl(this, setPlan); }
@Override public ServerGroupDeploymentPlanBuilder rollingToServers() { DeploymentSetPlanImpl setPlan = getCurrentDeploymentSetPlan(); ServerGroupDeploymentPlan groupPlan = setPlan.getLatestServerGroupDeploymentPlan(); if (groupPlan == null) { throw MESSAGES.notConfigured(ServerGroupDeploymentPlan.class.getSimpleName()); } groupPlan = groupPlan.createRollingToServers(); setPlan = setPlan.storeServerGroup(groupPlan); return new ServerGroupDeploymentPlanBuilderImpl(this, setPlan); }
@Override public ServerGroupDeploymentPlanBuilder allowPercentageFailures(int serverFailurePercentage) { DeploymentSetPlanImpl setPlan = getCurrentDeploymentSetPlan(); ServerGroupDeploymentPlan groupPlan = setPlan.getLatestServerGroupDeploymentPlan(); if (groupPlan == null) { throw MESSAGES.notConfigured(ServerGroupDeploymentPlan.class.getSimpleName()); } groupPlan = groupPlan.createAllowFailurePercentage(serverFailurePercentage); setPlan = setPlan.storeServerGroup(groupPlan); return new ServerGroupDeploymentPlanBuilderImpl(this, setPlan); }
@Override public ServerGroupDeploymentPlanBuilder allowFailures(int serverFailures) { DeploymentSetPlanImpl setPlan = getCurrentDeploymentSetPlan(); ServerGroupDeploymentPlan groupPlan = setPlan.getLatestServerGroupDeploymentPlan(); if (groupPlan == null) { throw ControllerClientLogger.ROOT_LOGGER.notConfigured(ServerGroupDeploymentPlan.class.getSimpleName()); } groupPlan = groupPlan.createAllowFailures(serverFailures); setPlan = setPlan.storeServerGroup(groupPlan); return new ServerGroupDeploymentPlanBuilderImpl(this, setPlan); }
@Override public RollbackDeploymentPlanBuilder withRollback() { DeploymentSetPlanImpl setPlan = getCurrentDeploymentSetPlan(); ServerGroupDeploymentPlan groupPlan = setPlan.getLatestServerGroupDeploymentPlan(); if (groupPlan == null) { throw ControllerClientLogger.ROOT_LOGGER.notConfigured(ServerGroupDeploymentPlan.class.getSimpleName()); } groupPlan = groupPlan.createRollback(); setPlan = setPlan.storeServerGroup(groupPlan); return new RollbackDeploymentPlanBuilderImpl(this, setPlan); }
@Override public ServerGroupDeploymentPlanBuilder rollingToServers() { DeploymentSetPlanImpl setPlan = getCurrentDeploymentSetPlan(); ServerGroupDeploymentPlan groupPlan = setPlan.getLatestServerGroupDeploymentPlan(); if (groupPlan == null) { throw ControllerClientLogger.ROOT_LOGGER.notConfigured(ServerGroupDeploymentPlan.class.getSimpleName()); } groupPlan = groupPlan.createRollingToServers(); setPlan = setPlan.storeServerGroup(groupPlan); return new ServerGroupDeploymentPlanBuilderImpl(this, setPlan); }
private ModelNode createServerGroupPlan(ServerGroupDeploymentPlan sgdp) { ModelNode result = new ModelNode(); result.get("rolling-to-servers").set(sgdp.isRollingToServers()); if (sgdp.isRollback()) { if (sgdp.getMaxServerFailurePercentage() > 0) { result.get("max-failure-percentage").set(sgdp.getMaxServerFailurePercentage()); } else { result.get("max-failed-servers").set(sgdp.getMaxServerFailures()); } } else { result.get("max-failure-percentage").set(100); } return result; }
public ServerGroupDeploymentPlan createRollingToServers() { return new ServerGroupDeploymentPlan(serverGroupName, rollback, true, maxFailures, maxFailurePercentage); }
private Set<String> getServerGroupNames(DeploymentPlan plan) { Set<String> names = new HashSet<String>(); for (Set<ServerGroupDeploymentPlan> sgdps : plan.getServerGroupDeploymentPlans()) { for (ServerGroupDeploymentPlan sgdp : sgdps) { names.add(sgdp.getServerGroupName()); } } return names; }
public ServerGroupDeploymentPlan createRollback() { return new ServerGroupDeploymentPlan(serverGroupName, true, rollingToServers, maxFailures, maxFailurePercentage); }
private void addRollbackPlan(DeploymentPlanImpl plan, Operation op) { ModelNode opNode = op.getOperation(); ModelNode rolloutPlan = opNode.get(OPERATION_HEADERS, ROLLOUT_PLAN); rolloutPlan.get("rollback-across-groups").set(plan.isRollbackAcrossGroups()); ModelNode series = rolloutPlan.get("in-series"); for (Set<ServerGroupDeploymentPlan> concurrent : plan.getServerGroupDeploymentPlans()) { if (concurrent.size() == 1) { ModelNode single = new ModelNode(); ServerGroupDeploymentPlan sgdp = concurrent.iterator().next(); single.get("server-group", sgdp.getServerGroupName()).set(createServerGroupPlan(sgdp)); series.add(single); } else { ModelNode multiple = new ModelNode(); for (ServerGroupDeploymentPlan sgdp : concurrent) { multiple.get("concurrent-groups", sgdp.getServerGroupName()).set(createServerGroupPlan(sgdp)); } series.add(multiple); } } }
public ServerGroupDeploymentPlan createRollingToServers() { return new ServerGroupDeploymentPlan(serverGroupName, rollback, true, maxFailures, maxFailurePercentage); }
private void addRollbackPlan(DeploymentPlanImpl plan, Operation op) { ModelNode opNode = op.getOperation(); ModelNode rolloutPlan = opNode.get(OPERATION_HEADERS, ROLLOUT_PLAN); rolloutPlan.get("rollback-across-groups").set(plan.isRollbackAcrossGroups()); ModelNode series = rolloutPlan.get("in-series"); for (Set<ServerGroupDeploymentPlan> concurrent : plan.getServerGroupDeploymentPlans()) { if (concurrent.size() == 1) { ModelNode single = new ModelNode(); ServerGroupDeploymentPlan sgdp = concurrent.iterator().next(); single.get("server-group", sgdp.getServerGroupName()).set(createServerGroupPlan(sgdp)); series.add(single); } else { ModelNode multiple = new ModelNode(); for (ServerGroupDeploymentPlan sgdp : concurrent) { multiple.get("concurrent-groups", sgdp.getServerGroupName()).set(createServerGroupPlan(sgdp)); } series.add(multiple); } } }
public ServerGroupDeploymentPlan createAllowFailures(int serverFailures) { if (serverFailures < 1) throw MESSAGES.invalidValue("serverFailures", serverFailures, 0); return new ServerGroupDeploymentPlan(serverGroupName, true, rollingToServers, serverFailures, maxFailurePercentage); }
public ServerGroupDeploymentPlan createAllowFailurePercentage(int serverFailurePercentage) { if (serverFailurePercentage < 1 || serverFailurePercentage > 99) throw MESSAGES.invalidValue("serverFailurePercentage", serverFailurePercentage, 0, 100); return new ServerGroupDeploymentPlan(serverGroupName, true, rollingToServers, maxFailures, serverFailurePercentage); }