Commit graph

85 commits

Author SHA1 Message Date
Mutahhir Hayat
05eeff8fbb Add failing test for deferred actions 2026-03-06 15:54:23 +01:00
Mutahhir Hayat
ffeff0914d Support for deferred action invocations in plan
We encovered that deferred action invocations don't get provider
addresses, which prevents us from loading the schema. That being said, I
think it shouldn't be an issue, but will come back to revisit this as we
build the support end to end.

Add a test for deferred actions support
2026-03-06 15:54:23 +01:00
Mutahhir Hayat
5b2f19abad Add failing test for deferred actions 2026-03-06 15:54:23 +01:00
Mutahhir Hayat
e133339a83 Add test for planned action invocation hooks, and ensuring the plan is valid 2026-03-06 14:00:31 +01:00
Daniel Schmidt
2077b53936 add tests for dynamic module sources in stacks 2026-03-05 16:24:51 +01:00
Matej Risek
768b7bd0bc Add local values walk to walk_dynamic
This helps us catch diagnostics in locals that only happen during evaluation

Co-authored-by: Mutahhir Hayat <mutahhir.hayat@hashicorp.com>
Co-authored-by: Matej Risek <matej.risek@hashicorp.com>
2025-12-11 10:42:52 +01:00
Liam Cervante
7ac2b7938e
Stacks: temporarily disable ephemeral outputs in Stack components (#37823) 2025-10-31 09:52:48 +01:00
Liam Cervante
411f18e6ac
ephemerals: allow root ephemeral outputs in stacks and test (#37813)
* ephemerals: allow root ephemeral outputs in stacks and test

* remember to set new opt for apply stage
2025-10-28 09:29:44 +01:00
Liam Cervante
abf1c00e03
stacks migrate: make diagnostics more relevant to operation (#37416) 2025-08-25 10:10:21 +02:00
Matej Risek
a9b67a6cdc
stacks: Don't require built-in providers to be listed under required providers. (#37234) 2025-06-18 17:02:27 +02:00
Liam Cervante
b6be635748
stacks migrate: allow resource mapping to include nested resources (#37060)
* stacks migrate: allow resource mapping to include nested resources

* make protobuf
2025-05-16 10:10:47 +02:00
Liam Cervante
a80220dcc9
stacks: rename .tfstack files to .tfcomponent (#37013)
* stacks: rename .tfstack files to .tfcomponent

* fix consistency issues
2025-05-15 08:33:13 +02:00
Liam Cervante
dcff9e4d2c
stacks: improve test coverage for removed blocks (#36914)
* stacks: improve test coverage for removed blocks

* remove leftover comment
2025-04-24 09:22:50 +02:00
Samsondeen
be242c36f4
Stacks migrate: migration workflow improvements (#36882) 2025-04-16 08:51:18 +02:00
Liam Cervante
a06f82746a
stacks: update removed blocks to allow targeting of embedded stacks (#36814)
* stacks: update removed blocks to allow targeting of embedded stacks

* copywrite headers
2025-04-04 15:01:37 +02:00
Liam Cervante
2b5101f734
stacks: include existing components when deferring nested stacks (#36788)
* stacks: include existing components when deferring nested stacks

* improve comments
2025-04-03 10:40:28 +02:00
Liam Cervante
fbd5a7930e
stacks: allow removed blocks to target components in nested stacks (#36787)
* stacks: allow removed blocks to target components in nested stacks

* make copywrite fix

* fix comments
2025-04-03 10:29:18 +02:00
Liam Cervante
7fadbe34de
write-only attributes: internal providers should set write-only attributes to null (#36824)
* write-only attributes: internal providers should set write-only attributes to null

* add changelog

* fix copywrite headers
2025-04-02 15:58:42 +02:00
Samsondeen
71dbc7d726
migrate command for terraform stacks (#36482) 2025-03-19 10:39:50 +01:00
Samsondeen
8b7e7ad27d
Detect circular references during Validation (#36709) 2025-03-19 10:39:23 +01:00
Liam Cervante
9bbe34daa4
stacks: pre-destroy refresh should use a normal plan (#36696)
* stacks: pre-destroy refresh should use a normal plan

* format
2025-03-18 09:28:31 +01:00
Liam Cervante
c16d466773
stacks: allow multiple removed blocks to target the same component (#36693)
* stacks: allow multiple removed blocks to target the same component

* make linter happy
2025-03-18 08:54:27 +01:00
Daniel Schmidt
bc901abcc5 stacks: test resource identity 2025-03-12 14:46:50 +01:00
Liam Cervante
3d014d82f3
stacks: fix errors processing index keys of removed blocks (#36673) 2025-03-12 10:33:18 +01:00
Liam Cervante
1c04516392
stacks: allow unknown variables during apply operations (#36311) 2025-01-20 12:18:35 +01:00
Liam Cervante
a5c9903bbe
deferred actions: don't plan partial resources during refresh and destroy (#36310)
* deferred actions: don't plan partial resources during refresh and destroy

* actually, imports don't trigger during refresh

* Update internal/terraform/node_resource_plan_partialexp.go

Co-authored-by: Nick Fagerlund <nick.fagerlund@gmail.com>

* address comments

---------

Co-authored-by: Nick Fagerlund <nick.fagerlund@gmail.com>
2025-01-20 12:18:25 +01:00
Liam Cervante
a384d2daa7
stacks: fix deferred data sources and unknown component applies (#35876) 2024-10-22 11:23:53 +02:00
Liam Cervante
7eb94fa7c8 stacks: fix tests broken now that ephemeral outputs aren't allowed 2024-10-11 10:23:10 +02:00
Liam Cervante
669e8ff1a6
stacks: skip full plan/apply cycles when deleting empty state (#35831) 2024-10-09 16:32:54 +02:00
Liam Cervante
bfa320c7b0
stacks: represent ephemeral inputs and outputs as null (#35824)
* stacks: represent ephemeral inputs and outputs as null

* quick fix: remove unnecessary check
2024-10-08 16:46:31 +02:00
Liam Cervante
d93e18d155
stacks: separate refresh and destroy stages during destroy plans (#35744)
* add tests that highlight known issues in the destroy mechanism

* separate refresh during destroy plans

* use the refresh outputs during destroy plans

* copywrite headers
2024-09-19 11:36:41 +02:00
Daniel Schmidt
e50a1ac824
stacks: fix dependency handling in component forget 2024-09-17 14:15:43 +02:00
Liam Cervante
73e3f8096b
stacks: complete stack output implementation for plan and apply (#35723) 2024-09-16 11:36:36 +02:00
Daniel Schmidt
ceb52e65bb
stacks: support forgetting components 2024-09-16 10:20:29 +02:00
Liam Cervante
c00bee8bbd
stacks: add a test for removed blocks in embedded stacks (#35681)
* stacks: add a test for removed blocks in embedded stacks

* restore test files
2024-09-07 15:22:59 +02:00
Liam Cervante
cf49545b5a
stacks: include removed blocks during validate command (#35680) 2024-09-07 15:04:14 +02:00
Liam Cervante
f8fe397d88
stacks: add removed block functionality (#35671)
* stacks: add removed block functionality

* fix compile errors
2024-09-07 14:36:16 +02:00
Liam Cervante
7163c4b6d5
stacks: fix destroy ordering of stacks destroy plans (#35665)
* stacks: remove unneeded required components functions

* stacks: refactor the mock provider for realism

* deferred actions: fix missing features in deletions

* stacks: fix destroy ordering of stacks destroy plans

* fix missing import
2024-09-05 12:10:24 +02:00
Liam Cervante
cb7bae3217
stacks: remove stale state during Stack apply operations (#35639) 2024-08-28 09:23:41 +02:00
Liam Cervante
f1ae07b1af
stacks: add support for provider functions in .tfstack.hcl files (#35610)
* stacks: fix bug preventing cross-provider move refactorings

* also make provider functions work

* stacks: add support for provider functions in .tfstack.hcl files
2024-08-22 09:28:39 +02:00
Liam Cervante
964c64157c
stacks: fix bug preventing unconfigured clients within Terraform (#35571)
* stacks: fix bug preventing cross-provider move refactorings

* also make provider functions work
2024-08-22 09:20:47 +02:00
Liam Cervante
047c1af0b4
stacks: add tests for state manipulation failure cases (#35589) 2024-08-19 11:45:08 +02:00
Liam Cervante
5939efb798
stacks: add depends_on for embedded stacks and components (#35549) 2024-08-12 15:02:36 +02:00
Liam Cervante
46393f2a92
stacks: apply automatic type conversion before comparing inputs (#35530)
* stacks: apply automatic type conversion before comparing inputs

* correct error message for missing ephemeral value during apply
2024-08-05 10:08:35 +02:00
Liam Cervante
33c0ae7f09
stacks: add additional provider validation tests (#35471) 2024-07-26 11:36:08 +02:00
Liam Cervante
87bbc47737
stacks: include plan mode in stacks plan format (#35405)
* stacks: include plan mode in stacks plan format

* fix tests

* fix missed files
2024-07-23 17:45:07 +02:00
Liam Cervante
3ecf7655ba
stacks: insert unknown values for missing outputs during applies (#35463)
* stacks: insert unknown values for missing outputs during apply operations

* fix tests
2024-07-17 08:44:39 +02:00
Daniel Schmidt
1d45d12f40
stacks: track resource deferrals in apply 2024-07-11 16:33:36 +02:00
Liam Cervante
8e47b5907c
stacks: provide more helpful diagnostics when providers types are mismatched (#35422)
* stacks: provide more helpful diagnostics when providers types are mismatched

* remove left over implementation experiments

* remove unnecessary fmt.Sprintf

* address comments

* fix incorrect pluralisation

* fix tests
2024-07-08 10:31:52 +02:00
Daniel Schmidt
b62a67394b
stacks: save plantimestamp to plan 2024-06-25 10:59:56 +02:00