diff --git a/terraform/eval_diff.go b/terraform/eval_diff.go index 6853f895c..559ab0a3e 100644 --- a/terraform/eval_diff.go +++ b/terraform/eval_diff.go @@ -214,6 +214,12 @@ func (n *EvalDiff) Eval(ctx EvalContext) (interface{}, error) { plannedNewVal := resp.PlannedState plannedPrivate := resp.PlannedPrivate + plannedNewVal, ignoreChangeDiags = n.processIgnoreChanges(priorVal, plannedNewVal) + diags = diags.Append(ignoreChangeDiags) + if ignoreChangeDiags.HasErrors() { + return nil, diags.Err() + } + if plannedNewVal == cty.NilVal { // Should never happen. Since real-world providers return via RPC a nil // is always a bug in the client-side stub. This is more likely caused