Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes #22993: Can't deploy, “Configuration state of the object modified by this change request has changed” looping #583

Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,7 @@ class TwoValidationStepsWorkflowServiceImpl(
currentStep: WorkflowNodeId,
isCreator: Boolean
): WorkflowAction = {

val deployAction = {
if (canDeploy(isCreator, selfDeployment))
Seq((Deployed.id, stepValidationToDeployed _))
Expand All @@ -224,7 +225,12 @@ class TwoValidationStepsWorkflowServiceImpl(
WorkflowAction("Validate", validatorActions)

case Deployment.id =>
WorkflowAction("Deploy", deployAction)
val deploymentAction = {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

3103cf4#diff-98e8dc3343e38546c42491a39303758ad01214ed8e5ef40c6a2c4d85cfa73f8eL205 if think this is a oversight

Without this we cannot close the change-request, the change-request will be deployed, be will still remains in the deployment step

(if (canDeploy(isCreator, selfValidation)) {
Seq((Deployment.id, stepDeploymentToDeployed _))
} else Seq()) ++ deployAction
}
WorkflowAction("Deploy", deploymentAction)
case Deployed.id => NoWorkflowAction
case Cancelled.id => NoWorkflowAction
case WorkflowNodeId(x) =>
Expand Down Expand Up @@ -435,6 +441,15 @@ class TwoValidationStepsWorkflowServiceImpl(
toFailure(Deployment, changeRequestId, actor, reason)
}

private[this] def stepDeploymentToDeployed(
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was removed in 7.3 by 3103cf4#diff-98e8dc3343e38546c42491a39303758ad01214ed8e5ef40c6a2c4d85cfa73f8eL413

This is a missing steps, don't understand why it's have been removed

changeRequestId: ChangeRequestId,
actor: EventActor,
reason: Option[String]
): Box[WorkflowNodeId] = {
onSuccessWorkflow(Deployment, changeRequestId, actor, reason)
}


// this THE workflow that needs external validation.
override def needExternalValidation(): Boolean = true
}