Skip to content

Commit

Permalink
fix(saga-npe): Set sagaContext on DeployDescription object where atom…
Browse files Browse the repository at this point in the history
…ic operations operate on TitusDeployHandler (#4084)
  • Loading branch information
jonsie authored and robzienert committed Oct 9, 2019
1 parent cdc8c07 commit a51aa94
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,14 @@ import com.netflix.spinnaker.clouddriver.data.task.Task
import com.netflix.spinnaker.clouddriver.data.task.TaskRepository
import com.netflix.spinnaker.clouddriver.deploy.DeploymentResult
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperation
import com.netflix.spinnaker.clouddriver.orchestration.SagaContextAware
import com.netflix.spinnaker.clouddriver.titus.TitusClientProvider
import com.netflix.spinnaker.clouddriver.titus.deploy.description.TitusDeployDescription
import com.netflix.spinnaker.clouddriver.titus.deploy.handlers.TitusDeployHandler

class CloneTitusServerGroupAtomicOperation implements AtomicOperation<DeploymentResult> {
import javax.annotation.Nonnull

class CloneTitusServerGroupAtomicOperation implements AtomicOperation<DeploymentResult>, SagaContextAware {

private static final String PHASE = "CLONE_TITUS_SERVER_GROUP"

Expand All @@ -50,4 +53,11 @@ class CloneTitusServerGroupAtomicOperation implements AtomicOperation<Deployment
private static Task getTask() {
TaskRepository.threadLocalTask.get()
}

@Override
void setSagaContext(@Nonnull SagaContext sagaContext) {
if (description instanceof SagaContextAware) {
((SagaContextAware) description).sagaContext = sagaContext
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,14 @@ import com.netflix.spinnaker.clouddriver.data.task.Task
import com.netflix.spinnaker.clouddriver.data.task.TaskRepository
import com.netflix.spinnaker.clouddriver.deploy.DeploymentResult
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperation
import com.netflix.spinnaker.clouddriver.orchestration.SagaContextAware
import com.netflix.spinnaker.clouddriver.titus.TitusClientProvider
import com.netflix.spinnaker.clouddriver.titus.deploy.description.TitusDeployDescription
import com.netflix.spinnaker.clouddriver.titus.deploy.handlers.TitusDeployHandler

class RunTitusJobAtomicOperation implements AtomicOperation<DeploymentResult> {
import javax.annotation.Nonnull

class RunTitusJobAtomicOperation implements AtomicOperation<DeploymentResult>, SagaContextAware {

private static final String PHASE = "RUN_TITUS_JOB"

Expand All @@ -51,4 +54,11 @@ class RunTitusJobAtomicOperation implements AtomicOperation<DeploymentResult> {
private static Task getTask() {
TaskRepository.threadLocalTask.get()
}

@Override
void setSagaContext(@Nonnull SagaContext sagaContext) {
if (description instanceof SagaContextAware) {
((SagaContextAware) description).sagaContext = sagaContext
}
}
}

0 comments on commit a51aa94

Please sign in to comment.