diff --git a/internal/command/jsonplan/plan.go b/internal/command/jsonplan/plan.go index 9531742c5a..4604289931 100644 --- a/internal/command/jsonplan/plan.go +++ b/internal/command/jsonplan/plan.go @@ -239,7 +239,7 @@ func MarshalForRenderer( return nil, nil, nil, nil, nil, err } - if output.ActionInvocations, err = MarshalActionInvocations(p.ActionInvocations); err != nil { + if output.ActionInvocations, err = MarshalActionInvocations(p.Changes.ActionInvocations); err != nil { return nil, nil, nil, nil, nil, err } @@ -336,9 +336,9 @@ func Marshal( return nil, fmt.Errorf("error marshaling config: %s", err) } - // output.ActionInvocations - if p.ActionInvocations != nil { - if output.ActionInvocations, err = MarshalActionInvocations(p.ActionInvocations); err != nil { + // output.Changes.ActionInvocations + if p.Changes.ActionInvocations != nil { + if output.ActionInvocations, err = MarshalActionInvocations(p.Changes.ActionInvocations); err != nil { return nil, fmt.Errorf("error marshaling action invocations: %s", err) } } diff --git a/internal/plans/plan.go b/internal/plans/plan.go index c4669b64e5..e80dfbbfe4 100644 --- a/internal/plans/plan.go +++ b/internal/plans/plan.go @@ -67,7 +67,6 @@ type Plan struct { ApplyTimeVariables collections.Set[string] Changes *ChangesSrc - ActionInvocations []*ActionInvocationInstanceSrc DriftedResources []*ResourceInstanceChangeSrc DeferredResources []*DeferredResourceInstanceChangeSrc TargetAddrs []addrs.Targetable diff --git a/internal/plans/planfile/planfile_test.go b/internal/plans/planfile/planfile_test.go index e3d22bf5e9..b2819be8d8 100644 --- a/internal/plans/planfile/planfile_test.go +++ b/internal/plans/planfile/planfile_test.go @@ -68,8 +68,7 @@ func TestRoundtrip(t *testing.T) { Config: plans.DynamicValue([]byte("config placeholder")), Workspace: "default", }, - Checks: &states.CheckResults{}, - ActionInvocations: []*plans.ActionInvocationInstanceSrc{}, + Checks: &states.CheckResults{}, // Due to some historical oddities in how we've changed modelling over // time, we also include the states (without the corresponding file diff --git a/internal/plans/planfile/tfplan.go b/internal/plans/planfile/tfplan.go index 70a34e5fff..856ec03053 100644 --- a/internal/plans/planfile/tfplan.go +++ b/internal/plans/planfile/tfplan.go @@ -69,7 +69,6 @@ func readTfplan(r io.Reader) (*plans.Plan, error) { DriftedResources: []*plans.ResourceInstanceChangeSrc{}, DeferredResources: []*plans.DeferredResourceInstanceChangeSrc{}, Checks: &states.CheckResults{}, - ActionInvocations: []*plans.ActionInvocationInstanceSrc{}, } plan.Applyable = rawPlan.Applyable @@ -188,7 +187,7 @@ func readTfplan(r io.Reader) (*plans.Plan, error) { return nil, err } - plan.ActionInvocations = append(plan.ActionInvocations, action) + plan.Changes.ActionInvocations = append(plan.Changes.ActionInvocations, action) } switch { @@ -679,7 +678,7 @@ func writeTfplan(plan *plans.Plan, w io.Writer) error { ) } - for _, action := range plan.ActionInvocations { + for _, action := range plan.Changes.ActionInvocations { rawAction, err := actionInvocationToTfPlan(action) if err != nil { return err diff --git a/internal/plans/planfile/tfplan_test.go b/internal/plans/planfile/tfplan_test.go index 7ce7a65f04..bb90709eaa 100644 --- a/internal/plans/planfile/tfplan_test.go +++ b/internal/plans/planfile/tfplan_test.go @@ -303,6 +303,20 @@ func examplePlanForTest(t *testing.T) *plans.Plan { }, }, }, + ActionInvocations: []*plans.ActionInvocationInstanceSrc{ + { + Addr: addrs.Action{Type: "example", Name: "foo"}.Instance(addrs.NoKey).Absolute(addrs.RootModuleInstance), + ProviderAddr: provider, + TriggerEvent: configs.BeforeCreate, + ActionTriggerBlockIndex: 2, + ActionsListIndex: 0, + TriggeringResourceAddr: addrs.Resource{ + Mode: addrs.ManagedResourceMode, + Type: "test_thing", + Name: "woot", + }.Instance(addrs.IntKey(0)).Absolute(addrs.RootModuleInstance), + }, + }, }, DriftedResources: []*plans.ResourceInstanceChangeSrc{ { @@ -462,20 +476,6 @@ func examplePlanForTest(t *testing.T) *plans.Plan { ), Workspace: "default", }, - ActionInvocations: []*plans.ActionInvocationInstanceSrc{ - { - Addr: addrs.Action{Type: "example", Name: "foo"}.Instance(addrs.NoKey).Absolute(addrs.RootModuleInstance), - ProviderAddr: provider, - TriggerEvent: configs.BeforeCreate, - ActionTriggerBlockIndex: 2, - ActionsListIndex: 0, - TriggeringResourceAddr: addrs.Resource{ - Mode: addrs.ManagedResourceMode, - Type: "test_thing", - Name: "woot", - }.Instance(addrs.IntKey(0)).Absolute(addrs.RootModuleInstance), - }, - }, } }