Skip to content

Commit

Permalink
updated field names
Browse files Browse the repository at this point in the history
  • Loading branch information
ssalinas committed Mar 24, 2016
1 parent 24811cf commit 78407d5
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 20 deletions.
Expand Up @@ -13,18 +13,18 @@ public class SingularityDeployRequest {
private final Optional<Boolean> unpauseOnSuccessfulDeploy;
private final SingularityDeploy deploy;
private final Optional<String> message;
private final Optional<SingularityRequest> newRequestData;
private final Optional<SingularityRequest> updatedRequest;

@JsonCreator
public SingularityDeployRequest(
@JsonProperty("deploy") SingularityDeploy deploy,
@JsonProperty("unpauseOnSuccessfulDeploy") Optional<Boolean> unpauseOnSuccessfulDeploy,
@JsonProperty("message") Optional<String> message,
@JsonProperty("newRequestData") Optional<SingularityRequest> newRequestData) {
@JsonProperty("updatedRequest") Optional<SingularityRequest> updatedRequest) {
this.deploy = deploy;
this.unpauseOnSuccessfulDeploy = unpauseOnSuccessfulDeploy;
this.message = message;
this.newRequestData = newRequestData;
this.updatedRequest = updatedRequest;
}

public SingularityDeployRequest(SingularityDeploy deploy, Optional<Boolean> unpauseOnSuccessfulDeploy, Optional<String> message) {
Expand All @@ -47,8 +47,8 @@ public Optional<String> getMessage() {
}

@ApiModelProperty(required=false, value="use this request data for this deploy, and update the request on successful deploy")
public Optional<SingularityRequest> getNewRequestData() {
return newRequestData;
public Optional<SingularityRequest> getUpdatedRequest() {
return updatedRequest;
}

@JsonIgnore
Expand All @@ -58,7 +58,7 @@ public boolean isUnpauseOnSuccessfulDeploy() {

@Override
public String toString() {
return "SingularityDeployRequest [unpauseOnSuccessfulDeploy=" + unpauseOnSuccessfulDeploy + ", deploy=" + deploy + ", message=" + message + ", newRequestData=" + newRequestData + "]";
return "SingularityDeployRequest [unpauseOnSuccessfulDeploy=" + unpauseOnSuccessfulDeploy + ", deploy=" + deploy + ", message=" + message + ", updatedRequest=" + updatedRequest + "]";
}

}
Expand Up @@ -90,52 +90,50 @@ public SingularityRequestParent deploy(@ApiParam(required=true) SingularityDeplo

authorizationHelper.checkForAuthorization(requestWithState.getRequest(), user, SingularityAuthorizationScope.WRITE);

SingularityRequest newRequestData = requestWithState.getRequest();
boolean hasUpdatedRequest = false;
if (deployRequest.getNewRequestData().isPresent()) {
newRequestData = validator.checkSingularityRequest(deployRequest.getNewRequestData().get(), Optional.of(requestWithState.getRequest()), Optional.<SingularityDeploy>absent(), Optional.of(deploy));
hasUpdatedRequest = true;
SingularityRequest request = requestWithState.getRequest();
if (deployRequest.getUpdatedRequest().isPresent()) {
request = validator.checkSingularityRequest(deployRequest.getUpdatedRequest().get(), Optional.of(requestWithState.getRequest()), Optional.<SingularityDeploy>absent(), Optional.of(deploy));
}

if (!deployRequest.isUnpauseOnSuccessfulDeploy()) {
checkConflict(requestWithState.getState() != RequestState.PAUSED, "Request %s is paused. Unable to deploy (it must be manually unpaused first)", requestWithState.getRequest().getId());
}

deploy = validator.checkDeploy(newRequestData, deploy);
deploy = validator.checkDeploy(request, deploy);

final long now = System.currentTimeMillis();

SingularityDeployMarker deployMarker = new SingularityDeployMarker(requestId, deploy.getId(), now, deployUser, deployRequest.getMessage());

Optional<SingularityDeployProgress> deployProgress = Optional.absent();
if (newRequestData.isLongRunning()) {
if (request.isLongRunning()) {
deployProgress = Optional.of(new SingularityDeployProgress(
Math.min(deploy.getDeployInstanceCountPerStep().or(newRequestData.getInstancesSafe()), newRequestData.getInstancesSafe()),
deploy.getDeployInstanceCountPerStep().or(newRequestData.getInstancesSafe()),
Math.min(deploy.getDeployInstanceCountPerStep().or(request.getInstancesSafe()), request.getInstancesSafe()),
deploy.getDeployInstanceCountPerStep().or(request.getInstancesSafe()),
deploy.getDeployStepWaitTimeMs().or(configuration.getDefaultDeployStepWaitTimeMs()),
false,
deploy.getAutoAdvanceDeploySteps().or(true),
Collections.<SingularityTaskId>emptySet(),
System.currentTimeMillis()));
}

SingularityPendingDeploy pendingDeployObj = new SingularityPendingDeploy(deployMarker, Optional.<SingularityLoadBalancerUpdate> absent(), DeployState.WAITING, deployProgress, hasUpdatedRequest ? Optional.of(newRequestData) : Optional.<SingularityRequest>absent());
SingularityPendingDeploy pendingDeployObj = new SingularityPendingDeploy(deployMarker, Optional.<SingularityLoadBalancerUpdate> absent(), DeployState.WAITING, deployProgress, deployRequest.getUpdatedRequest());

checkConflict(deployManager.createPendingDeploy(pendingDeployObj) != SingularityCreateResult.EXISTED,
"Pending deploy already in progress for %s - cancel it or wait for it to complete (%s)", requestId, deployManager.getPendingDeploy(requestId).orNull());

deployManager.saveDeploy(newRequestData, deployMarker, deploy);
deployManager.saveDeploy(request, deployMarker, deploy);

if (requestWithState.getState() == RequestState.PAUSED) {
requestManager.deployToUnpause(newRequestData, now, deployUser, deployRequest.getMessage());
requestManager.deployToUnpause(request, now, deployUser, deployRequest.getMessage());
}

if (newRequestData.isDeployable()) {
if (request.isDeployable()) {
requestManager.addToPendingQueue(new SingularityPendingRequest(requestId, deployMarker.getDeployId(), now, deployUser, PendingType.NEW_DEPLOY,
deployRequest.getDeploy().getSkipHealthchecksOnDeploy(), deployRequest.getMessage()));
}

return fillEntireRequest(requestWithState, Optional.of(newRequestData));
return fillEntireRequest(requestWithState, Optional.of(request));
}

@DELETE
Expand Down

0 comments on commit 78407d5

Please sign in to comment.