@@ -122,22 +122,6 @@ func (n *NodePlannableResourceInstanceOrphan) managedResourceExecute(ctx EvalCon
122
122
}
123
123
}
124
124
125
- shouldDefer := ctx .Deferrals ().ShouldDeferResourceInstanceChanges (n .Addr , n .Dependencies )
126
-
127
- var change * plans.ResourceInstanceChange
128
- var pDiags tfdiags.Diagnostics
129
- var deferred * providers.Deferred
130
- if forget {
131
- change , pDiags = n .planForget (ctx , oldState , "" )
132
- diags = diags .Append (pDiags )
133
- } else {
134
- change , deferred , pDiags = n .planDestroy (ctx , oldState , "" )
135
- diags = diags .Append (pDiags )
136
- }
137
- if diags .HasErrors () {
138
- return diags
139
- }
140
-
141
125
if ! n .skipRefresh && ! forget {
142
126
// Refresh this instance even though it is going to be destroyed, in
143
127
// order to catch missing resources. If this is a normal plan,
@@ -153,12 +137,7 @@ func (n *NodePlannableResourceInstanceOrphan) managedResourceExecute(ctx EvalCon
153
137
154
138
oldState = refreshedState
155
139
156
- if deferred == nil {
157
- // set the overall deferred status if it wasn't already set.
158
- deferred = refreshDeferred
159
- }
160
-
161
- if deferred == nil && ! shouldDefer {
140
+ if refreshDeferred == nil {
162
141
// only update the state if we're not deferring the change
163
142
diags = diags .Append (n .writeResourceInstanceState (ctx , refreshedState , refreshState ))
164
143
if diags .HasErrors () {
@@ -167,6 +146,22 @@ func (n *NodePlannableResourceInstanceOrphan) managedResourceExecute(ctx EvalCon
167
146
}
168
147
}
169
148
149
+ shouldDefer := ctx .Deferrals ().ShouldDeferResourceInstanceChanges (n .Addr , n .Dependencies )
150
+
151
+ var change * plans.ResourceInstanceChange
152
+ var pDiags tfdiags.Diagnostics
153
+ var deferred * providers.Deferred
154
+ if forget {
155
+ change , pDiags = n .planForget (ctx , oldState , "" )
156
+ diags = diags .Append (pDiags )
157
+ } else {
158
+ change , deferred , pDiags = n .planDestroy (ctx , oldState , "" )
159
+ diags = diags .Append (pDiags )
160
+ }
161
+ if diags .HasErrors () {
162
+ return diags
163
+ }
164
+
170
165
// We might be able to offer an approximate reason for why we are
171
166
// planning to delete this object. (This is best-effort; we might
172
167
// sometimes not have a reason.)
0 commit comments