Skip to content

Commit

Permalink
Merge pull request #238 from cliveseldon/defaulting
Browse files Browse the repository at this point in the history
Fix for defaulting changing Custom Resource
  • Loading branch information
ukclivecox authored Sep 26, 2018
2 parents 43ee776 + 7e72abb commit 6eb9309
Show file tree
Hide file tree
Showing 6 changed files with 200 additions and 202 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -269,6 +269,7 @@ public void createOrReplaceSeldonDeployment(SeldonDeployment mlDep) {
if (existing == null || !existing.getSpec().equals(mlDep.getSpec()))
{
logger.debug("Running updates for "+mlDep.getMetadata().getName());
SeldonDeployment mlDepStatusUpdated = operator.updateStatus(mlDep);
SeldonDeployment mlDep2 = operator.defaulting(mlDep);
operator.validate(mlDep2);
mlCache.put(mlDep2);
Expand All @@ -281,13 +282,13 @@ public void createOrReplaceSeldonDeployment(SeldonDeployment mlDep) {
//removeServices(client,namespace, mlDep2, resources.services); //Proto Client not presently working for deletion
ApiClient client2 = clientProvider.getClient();
removeServices(client2,namespace, mlDep2, resources.services);
if (!mlDep.getSpec().equals(mlDep2.getSpec()))
if (!mlDep.getSpec().equals(mlDepStatusUpdated.getSpec()))
{
logger.debug("Pushing updated SeldonDeployment "+mlDep2.getMetadata().getName()+" back to kubectl");
crdHandler.updateSeldonDeployment(mlDep2);
logger.debug("Pushing updated SeldonDeployment "+mlDepStatusUpdated.getMetadata().getName()+" back to kubectl");
crdHandler.updateSeldonDeployment(mlDepStatusUpdated);
}
else
logger.debug("Not pushing an update as no change to spec for SeldonDeployment "+mlDep2.getMetadata().getName());
logger.debug("Not pushing an update as no change to status for SeldonDeployment "+mlDep2.getMetadata().getName());
}
else
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@

public interface SeldonDeploymentOperator {

public SeldonDeployment updateStatus(SeldonDeployment mlDep);
public SeldonDeployment defaulting(SeldonDeployment mlDep);
public void validate(SeldonDeployment mlDep) throws SeldonDeploymentException;
public DeploymentResources createResources(SeldonDeployment mlDep) throws SeldonDeploymentException;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -356,7 +356,19 @@ public String getSeldonServiceName(SeldonDeployment dep,PredictorSpec pred,Strin
else
return svcName;
}


@Override
public SeldonDeployment updateStatus(SeldonDeployment mlDep) {
SeldonDeployment.Builder mlBuilder = SeldonDeployment.newBuilder(mlDep);

if (!mlBuilder.hasStatus())
{
mlBuilder.getStatusBuilder().setState(Constants.STATE_CREATING);
}

return mlBuilder.build();
}


@Override
public SeldonDeployment defaulting(SeldonDeployment mlDep) {
Expand Down Expand Up @@ -406,11 +418,6 @@ public SeldonDeployment defaulting(SeldonDeployment mlDep) {
}
}

if (!mlBuilder.hasStatus())
{
mlBuilder.getStatusBuilder().setState(Constants.STATE_CREATING);
}

return mlBuilder.build();
}

Expand Down Expand Up @@ -772,5 +779,6 @@ public DeploymentResources(List<Deployment> deployments, List<Service> services)
}




}
Loading

0 comments on commit 6eb9309

Please sign in to comment.