diff --git a/internal/command/jsonplan/plan.go b/internal/command/jsonplan/plan.go index 89ecc4c026..86b5e1e4b2 100644 --- a/internal/command/jsonplan/plan.go +++ b/internal/command/jsonplan/plan.go @@ -392,6 +392,8 @@ func (p *plan) marshalResourceChanges(resources []*plans.ResourceInstanceChangeS r.ActionReason = "replace_because_tainted" case plans.ResourceInstanceReplaceByRequest: r.ActionReason = "replace_by_request" + case plans.ResourceInstanceReplaceByTriggers: + r.ActionReason = "replace_by_triggers" case plans.ResourceInstanceDeleteBecauseNoResourceConfig: r.ActionReason = "delete_because_no_resource_config" case plans.ResourceInstanceDeleteBecauseWrongRepetition: diff --git a/internal/command/views/json/change.go b/internal/command/views/json/change.go index 4a8aa4e5bd..2036b36761 100644 --- a/internal/command/views/json/change.go +++ b/internal/command/views/json/change.go @@ -68,11 +68,12 @@ func changeAction(action plans.Action) ChangeAction { type ChangeReason string const ( - ReasonNone ChangeReason = "" - ReasonTainted ChangeReason = "tainted" - ReasonRequested ChangeReason = "requested" - ReasonCannotUpdate ChangeReason = "cannot_update" - ReasonUnknown ChangeReason = "unknown" + ReasonNone ChangeReason = "" + ReasonTainted ChangeReason = "tainted" + ReasonRequested ChangeReason = "requested" + ReasonReplaceTriggeredBy ChangeReason = "replace_triggered_by" + ReasonCannotUpdate ChangeReason = "cannot_update" + ReasonUnknown ChangeReason = "unknown" ReasonDeleteBecauseNoResourceConfig ChangeReason = "delete_because_no_resource_config" ReasonDeleteBecauseWrongRepetition ChangeReason = "delete_because_wrong_repetition" @@ -91,6 +92,8 @@ func changeReason(reason plans.ResourceInstanceChangeActionReason) ChangeReason return ReasonRequested case plans.ResourceInstanceReplaceBecauseCannotUpdate: return ReasonCannotUpdate + case plans.ResourceInstanceReplaceByTriggers: + return ReasonReplaceTriggeredBy case plans.ResourceInstanceDeleteBecauseNoResourceConfig: return ReasonDeleteBecauseNoResourceConfig case plans.ResourceInstanceDeleteBecauseWrongRepetition: diff --git a/internal/plans/planfile/tfplan.go b/internal/plans/planfile/tfplan.go index 581a545dc2..882d5fa8f6 100644 --- a/internal/plans/planfile/tfplan.go +++ b/internal/plans/planfile/tfplan.go @@ -266,6 +266,8 @@ func resourceChangeFromTfplan(rawChange *planproto.ResourceInstanceChange) (*pla ret.ActionReason = plans.ResourceInstanceReplaceBecauseTainted case planproto.ResourceInstanceActionReason_REPLACE_BY_REQUEST: ret.ActionReason = plans.ResourceInstanceReplaceByRequest + case planproto.ResourceInstanceActionReason_REPLACE_BY_TRIGGERS: + ret.ActionReason = plans.ResourceInstanceReplaceByTriggers case planproto.ResourceInstanceActionReason_DELETE_BECAUSE_NO_RESOURCE_CONFIG: ret.ActionReason = plans.ResourceInstanceDeleteBecauseNoResourceConfig case planproto.ResourceInstanceActionReason_DELETE_BECAUSE_WRONG_REPETITION: @@ -611,6 +613,8 @@ func resourceChangeToTfplan(change *plans.ResourceInstanceChangeSrc) (*planproto ret.ActionReason = planproto.ResourceInstanceActionReason_REPLACE_BECAUSE_TAINTED case plans.ResourceInstanceReplaceByRequest: ret.ActionReason = planproto.ResourceInstanceActionReason_REPLACE_BY_REQUEST + case plans.ResourceInstanceReplaceByTriggers: + ret.ActionReason = planproto.ResourceInstanceActionReason_REPLACE_BY_TRIGGERS case plans.ResourceInstanceDeleteBecauseNoResourceConfig: ret.ActionReason = planproto.ResourceInstanceActionReason_DELETE_BECAUSE_NO_RESOURCE_CONFIG case plans.ResourceInstanceDeleteBecauseWrongRepetition: