Commit Graph

355 Commits (8fd8a48a06af33d3a3614b4b48768bd1516632fe)

Author SHA1 Message Date
Liam Cervante 7163c4b6d5
stacks: fix destroy ordering of stacks destroy plans (#35665)
2 years ago
Liam Cervante 36f11851a6
stacks: refactor the mock provider for realism (#35654)
2 years ago
Liam Cervante 11f431196d
stacks: remove unneeded required components functions (#35648)
2 years ago
Liam Cervante cb7bae3217
stacks: remove stale state during Stack apply operations (#35639)
2 years ago
Liam Cervante 50233d7a78
stacks: support sensitive input values in planned changes (#35640)
2 years ago
Liam Cervante 40dc5c02d5
stacks: ensure providers that should not be configured cannot be (#35624)
2 years ago
James Bardin 20f66dffd0 fixup new test comparator
2 years ago
James Bardin 0b8fbfe323 ignore unexported state field in comparison
2 years ago
Liam Cervante f1ae07b1af
stacks: add support for provider functions in .tfstack.hcl files (#35610)
2 years ago
Liam Cervante 964c64157c
stacks: fix bug preventing unconfigured clients within Terraform (#35571)
2 years ago
Liam Cervante 7660d8d086
stacks: fix suggested command when lock file is out of date (#35616)
2 years ago
Liam Cervante 047c1af0b4
stacks: add tests for state manipulation failure cases (#35589)
2 years ago
Liam Cervante bb73fb1d69
stacks: don't validate input variables during the apply phase (#35561)
2 years ago
Liam Cervante 5939efb798
stacks: add depends_on for embedded stacks and components (#35549)
2 years ago
Liam Cervante 38033b5c45
stacks: sort diags in test before comparison (#35550)
2 years ago
Liam Cervante 915b174da3
stacks: split the terraform1 RPC package into per-service packages (#35513)
2 years ago
Liam Cervante 46393f2a92
stacks: apply automatic type conversion before comparing inputs (#35530)
2 years ago
Liam Cervante 0c67edd598
stacks: ensure input values for components don't change between plan and apply (#35489)
2 years ago
Liam Cervante 33c0ae7f09
stacks: add additional provider validation tests (#35471)
2 years ago
Liam Cervante e704da535e
stack: stacks should be applyable even if no components are (#35498)
2 years ago
Liam Cervante 87bbc47737
stacks: include plan mode in stacks plan format (#35405)
2 years ago
Martin Atkins 170cca1332 stacks+promising: Better error messages for promise resolution failure
2 years ago
Martin Atkins ec2510fc3d stacks: Track raw stack as separate messages in raw plan
2 years ago
Alisdair McDiarmid d828776757 stacks+rpcapi: Load prior state and plan separately
2 years ago
Liam Cervante 3ecf7655ba
stacks: insert unknown values for missing outputs during applies (#35463)
2 years ago
Daniel Schmidt 1d45d12f40
stacks: track resource deferrals in apply
2 years ago
Daniel Schmidt 591c3dea36
Merge pull request #35433 from hashicorp/TF-10919
2 years ago
Liam Cervante 634155f56b
stacks: extend diagnostic message to capture error from unscheduled component (#35434)
2 years ago
Daniel Schmidt 93cf093168
stacks: add new deferred plan status
2 years ago
Liam Cervante 8e47b5907c
stacks: provide more helpful diagnostics when providers types are mismatched (#35422)
2 years ago
Daniel Schmidt 4f401d9cd3
stacks: add dependency lock to new test case
2 years ago
Daniel Schmidt bf5037fa05
stacks: add test case
2 years ago
Daniel Schmidt 9f8ab0450c
stacks: fix move apply test
2 years ago
Daniel Schmidt 2a3c579693
stacks: use inspecting phase for provider config tests
2 years ago
Daniel Schmidt 05755422f3
stacks: pass dependency lock in tests
2 years ago
Daniel Schmidt 4433239da4
stacks: validate dependency lockfile in apply phase
2 years ago
Daniel Schmidt 0e5f7acda0
stacks: validate dependency lockfile in planning phase
2 years ago
Daniel Schmidt fb2f3ca276
stacks: refactor to get dependency locks through main
2 years ago
Daniel Schmidt 2ed6e1facd
stacks: validate lockfile containing all providers
2 years ago
Liam Cervante 587a7e88ff
stacks: include move, forget, import counts in apply summaries (#35391)
2 years ago
Liam Cervante 27f26bd1b5
stacks: emit specific moved notification during apply (#35387)
2 years ago
Daniel Schmidt ae05a0d27b
stacks: use plantimestamp from opts while planning
2 years ago
Daniel Schmidt a51938c246
stacks: move PlanTimestamp method for consistency
2 years ago
Daniel Schmidt 46999364f0
stacks: refactor for plantimestamp to come from the outside
2 years ago
Daniel Schmidt 49ba330fb5
stacks: force plan timestamp in module runtime
2 years ago
Daniel Schmidt b62a67394b
stacks: save plantimestamp to plan
2 years ago
Daniel Schmidt 8fa922f912
stacks: implement PlanTimestamp method on ExpressionScope
2 years ago
Mutahhir Hayat 01c5ddaecc
Merge pull request #34797 from hashicorp/mutahhir/stacks/local-value
2 years ago
Liam Cervante c0499647fa
stacks: include moved and removed in API (#35360)
2 years ago
Mutahhir Hayat 148b19b0d7 return validate value instead of dynamic value
2 years ago
Daniel Schmidt 3aa8e43100
Merge pull request #35356 from hashicorp/b-stacks-apply-variables-not-passed
2 years ago
Martin Atkins c57f709b1d stackruntime: Pass the apply-time variable values to stackeval
2 years ago
Liam Cervante b646dff26a
stacks: apply nested default values to inputs (#35349)
2 years ago
Liam Cervante 284ce63947
stacks: applyable status should be dependent on applyable components (#35350)
2 years ago
Martin Atkins 1714729f87 stackeval: terraform.applying symbol
2 years ago
Martin Atkins e74896bd24 stackruntime: Handle apply-time-specified input variables
2 years ago
Martin Atkins 79f78b268f stackeval: Ephemeral output values
2 years ago
Martin Atkins 71749d9682 stackeval: Ephemeral input variables
2 years ago
Liam Cervante 517f9944f7
stacks: support deferred imports in stacks events (#35334)
2 years ago
Liam Cervante 108bd85053
Refactor deferred variable name to defer in terraform1 API (#35343)
2 years ago
Mutahhir Hayat d398fa50c6 handle overlooked error in test
2 years ago
Mutahhir Hayat cb28bf3379 remove unused test
2 years ago
Mutahhir Hayat e20891ac1d add tests for local values through data sources
2 years ago
Liam Cervante 9b95898f63
stacks: emit events for deferred actions (#35325)
2 years ago
Liam Cervante 1bb78c14c2
deferred actions: always enable deferred actions in stacks (#35321)
2 years ago
Liam Cervante fc390038f3
stacks: add tests for and refactor steps when a provider can't be configured (#35294)
2 years ago
Liam Cervante eeb2c53385
stacks: remove wildcard key from computed instances (#35284)
2 years ago
Liam Cervante dc06717f69
stacks: add support for unknown for_each expressions in providers (#35267)
2 years ago
Liam Cervante 1e9a186059
stacks: return dynamic types when referencing partial components (#35254)
2 years ago
Liam Cervante 7096ec85cc
stacks: Enable resource deferrals within stack tests (#35168)
2 years ago
Daniel Schmidt 59ead5356f
stacks: update RPC APIs with deferral information (#35125)
2 years ago
Alisdair McDiarmid c8eec89c3d
Merge pull request #35247 from hashicorp/alisdair/rpcapi-stop
2 years ago
Liam Cervante b5d6b13b3b
stacks: convert sourcebundle source into directory for config SourceDir field (#35245)
2 years ago
Martin Atkins 5003af8335 stackeval: If context is cancelled, ask provider instances to stop
2 years ago
Alisdair McDiarmid 39373cc0d6 stackeval: Stop operations on context cancellation
2 years ago
Martin Atkins 9448845e91 stackeval: Improve coverage of namedPromiseReporter impls
2 years ago
Martin Atkins a4d19a8d13 stackeval: Stack.ProviderByLocalAddr must memoize its results
2 years ago
Liam Cervante 7a8ffff66e
stacks: Fix unknown provider values crashing validation phase (#35155)
2 years ago
Daniel Schmidt 2c65affe05
stacks: add comments to tests
2 years ago
Daniel Schmidt b1e50d0475
chore: fix comment
2 years ago
Daniel Schmidt 664bb21738
stacks: add comment
2 years ago
Mutahhir Hayat 6bbc8cdc76 Add more tests for local values
2 years ago
Mutahhir Hayat 2667a0f2c3 cleanup comments
2 years ago
Mutahhir Hayat 5e12bdf048 Stack evaluation should also visit local values when walking the stack
2 years ago
Mutahhir Hayat be317d4d3a Make Stack and Stack config aware of local values
2 years ago
Mutahhir Hayat 6554ce6bfd Add planning test to test for locals usage
2 years ago
Mutahhir Hayat 129d58fed3 Create local value structs, including config and tests
2 years ago
Mutahhir Hayat d695f8197c Add local values test
2 years ago
Daniel Schmidt 3267718d3d
stacks: support unknown for_each on embedded stacks
2 years ago
kmoe b74715e5fb
stacks: fix invalid filename (#35111)
2 years ago
Daniel Schmidt 35f44b01f0
stacks: fix comment and add assertion for diagnostics
2 years ago
Daniel Schmidt aeb5b47723
stacks: remove unused test case
2 years ago
Daniel Schmidt f847360a40
stacks: component.CheckInstances now reports on for each value diagnostics
2 years ago
Daniel Schmidt c370e5e71d
stacks: use more precise name for variable
2 years ago
Daniel Schmidt 1afc9789ef
stacks: use UnknownForEachRepetitionData for instance map repetition data in for_each
2 years ago
Daniel Schmidt 91a18a6b30
stacks: fix typo
2 years ago
Daniel Schmidt 7d0c4cfc4d
stacks: early exit on invalid for_each values for components
2 years ago
Daniel Schmidt d1168ffa62
stacks: return instance value for wildcard component instances
2 years ago
Daniel Schmidt 6f95225a91
stacks: handle unknown dynamic values
2 years ago
Daniel Schmidt 3cbfd39721
stacks: validate unknown component for_each type
2 years ago
Daniel Schmidt 3a7150b27e
stacks: handle unknown values in component for_each
2 years ago
Martin Atkins 30e2fd6525 Handle marks a little more consistently
2 years ago
Nick Fagerlund 4d46cc81e3 Fix several deferred actions tests by setting DeferralAllowed
2 years ago
Nick Fagerlund 2b4147e0ba Add DeferralAllowed to stackeval.PlanOpts (temporary)
2 years ago
Nick Fagerlund d5be799cb9 End unknown_instances language experiment, in favor of whole-plan option
2 years ago
Alisdair McDiarmid f409639934
Merge pull request #34765 from hashicorp/alisdair/stack-root-input-variable-defaults
2 years ago
Alisdair McDiarmid f3ec86b17b stackruntime: Treat unset and null equally
2 years ago
Alisdair McDiarmid 0fe26468cd stackruntime: Apply defaults to root variables
2 years ago
CJ Horton 5a750561e6 round-trip check results through stack plans
2 years ago
Daniel Schmidt 49ad27f1c9
Merge pull request #34737 from hashicorp/stacks-for-each
2 years ago
Nick Fagerlund c9c24706aa
Merge pull request #34741 from hashicorp/nf/feb24-provider-addrs-in-statuses
2 years ago
Daniel Schmidt 2a0962328d
stacks: make error message more precise
2 years ago
Daniel Schmidt 8da61e2d20
stacks: reword for_each error message
2 years ago
Daniel Schmidt 217879e510
stacks: make component for_each more robust
2 years ago
Liam Cervante cec4b7b74c
stacks: validate providers based on types instead of local names (#34735)
2 years ago
Nick Fagerlund f58c71e77c Stacks: Update expectations in TestTerraformHook
2 years ago
Nick Fagerlund 7703a5aead Stacks: Add ProviderAddr field to ResourceInstanceStatusHookData
2 years ago
Nick Fagerlund 94ea534e40 Refactor terraform.Hook to use a resource-identifying wrapper struct
2 years ago
Liam Cervante 31a7fa88d5
stacks: validate provider configurations during static analysis (#34730)
2 years ago
Alisdair McDiarmid 1459825e53
Merge pull request #34725 from hashicorp/alisdair/configs-sourcebundle-parser
2 years ago
Alisdair McDiarmid 2c22c213e9 stackeval: More robust absolute source addrs
2 years ago
Alisdair McDiarmid 7a043fe54a stackeval: Another module source test case
2 years ago
Alisdair McDiarmid 7d956bbc11 stackeval: Fix module loader source addr building
2 years ago
Martin Atkins a45d4467f1 stackeval: Don't fail when data resource is removed
2 years ago
Liam Cervante b2cc7dbadf
stacks: validate the types of input variables during validation (#34722)
2 years ago
Liam Cervante 68fd15dfdd
stacks: expand reference scope of static validations (#34721)
2 years ago
Liam Cervante 831630fabe
stacks: the plan function should stop on validation errors (#34720)
2 years ago
Alisdair McDiarmid 97a220fb82 stacks: Use source bundle aware config parser
2 years ago
Liam Cervante b3abff5750
stacks: check providers blocks in components during validatation (#34707)
2 years ago
Liam Cervante bced645a4d
stacks: call terraform.Validate on stack component configs (#34705)
2 years ago
Liam Cervante 2472f7c773
stacks: fix flaky tests (#34708)
2 years ago
Alisdair McDiarmid 48148eda5f
Merge pull request #34687 from hashicorp/alisdair/stackeval-hook-replace-action-counts
2 years ago
Liam Cervante 64b311d53a
stacks: apply sensitive marks to outputs from components (#34684)
2 years ago
Liam Cervante f0b61090a2
Move the testing MockProvider into a dedicated shared package (#34681)
2 years ago
Alisdair McDiarmid 06723d3d4b stackeval: Add support for replace actions to hook
2 years ago
Martin Atkins fde6277565 stackruntime: Pass ExperimentsAllowed into stackeval for apply
2 years ago
Liam Cervante 07f6621091
stacks: include resources in state when calculating required providers (#34645)
2 years ago
Martin Atkins e6665c4f43 stackeval: Basic support for deferred-change propagation
2 years ago
Martin Atkins 67d8a5137b rpcapi+stacks: Stacks runtime can see whether experiments are allowed
2 years ago
Liam Cervante 3475d22741
Fix nil pointer exception when planning stacks with undeclared variables (#34638)
2 years ago
Alisdair McDiarmid 55675b990a stackeval: Unmark provider config for plugin RPC
2 years ago
Martin Atkins 884e1fb2a4 terraform: Plans can be "complete" and "applyable"
2 years ago
Martin Atkins 0994e6fbf9 stacks: The terraform.workspace attr is not available in Stacks
2 years ago
Martin Atkins 7d2d4dec5e stackeval: When being destroyed, component instance result comes from plan
2 years ago
Martin Atkins dcb176a557 stackeval: A Main for applying knows the plan it's applying
2 years ago
Martin Atkins c06ad051a1 stackeval: Respect inter-component dependencies during apply
2 years ago
Martin Atkins c345cde93c stackeval: Extended utilities for plan and apply testing
2 years ago
Liam Cervante 9246b3a994
stacks: on module load convert relative paths to absolute (#34523)
2 years ago
Liam Cervante 7d143388f3
Add support for the cross resource type move operation in the proto schema (#34480)
2 years ago
Martin Atkins 3c14eeb945 stackeval: Make some provisioners available to stack components
2 years ago