Commit Graph

30563 Commits

Author SHA1 Message Date
kmoe
755757e8b2
build: exclude .go-version from imports check (#32141) 2022-11-02 15:49:01 +00:00
James Bardin
52d724d1d0
Merge pull request #32115 from hashicorp/jbardin/apply-refresh-plan
don't lose checks from refresh-only plan
2022-11-02 11:05:15 -04:00
James Bardin
1100eae89f use UIMode instead of 0 changes to detect refresh 2022-11-02 10:56:08 -04:00
James Bardin
cccfa5e4af
Merge pull request #32111 from hashicorp/jbardin/refresh-only-data-read
don't plan data source reads during refresh-only
2022-11-02 08:32:50 -04:00
Liam Cervante
6521355ba5
Convert variable types before applying defaults (#32027)
* Convert variable types before applying defaults

* revert change to unrelated test

* Add another test case to verify behaviour

* update go-cty

* Update internal/terraform/eval_variable.go

Co-authored-by: alisdair <alisdair@users.noreply.github.com>

Co-authored-by: alisdair <alisdair@users.noreply.github.com>
2022-11-02 09:38:23 +01:00
Graham Davison
6663cde619
Merge pull request #23965 from tpaschalis/disallow-s3-backend-key-trailing-slash
S3 Backend : Bucket key should not contain trailing slash
2022-11-01 13:56:43 -07:00
James Bardin
bb68075e8c
Merge pull request #32123 from hashicorp/jbardin/noop-apply-optimizations
Apply optimizations for handling of condition checks
2022-11-01 16:32:43 -04:00
James Bardin
efd77159dd use key data from plan method for apply 2022-11-01 16:18:38 -04:00
James Bardin
ffe2e3935e avoid re-writing state for noop applies
We need to avoid re-writing the state for every NoOp apply. We may
still be evaluating the instance to account for any side-effects in the
condition checks, however the state of the instance has not changes.
Re-writing the state is a non-current operation, which may require
encoding a fairly large instance state and re-serializing the entire
state blob, so it is best avoided if possible.
2022-11-01 16:18:38 -04:00
James Bardin
eb88ccbc7b only add NoOp nodes with conditions
ONly add NoOp changes to the apply graph if they have conditions which
need to be evaluated.
2022-11-01 16:18:38 -04:00
James Bardin
19152e7ba5 fix log mesage 2022-11-01 16:18:38 -04:00
James Bardin
eae246cfb5 normalize empty CheckResults fields in stateV4
Ensure that empty check results are normalized in state serialization to
prevent unexpected state changes from being written.

Because there is no consistent empty, null and omit_empty usage for
state structs, there's no good way to create a test which will fail
for future additions.
2022-11-01 16:18:38 -04:00
James Bardin
fa4c652013 changes are mutated during apply 2022-11-01 16:18:38 -04:00
James Bardin
b61c02da05 don't lose checks from refresh-only plan
If there are no changes, then there is no reason to create an apply
graph since all objects are known. We however do need the walk to match
the expected state structure. This is probably only cleanup of empty
nested modules and outputs, but some investigation is needed before
making the full change.

For now we can store the checks from the plan directly into the new
state, since the apply walk overwrote the results we had already.
2022-11-01 16:18:38 -04:00
Paschalis Tsilias
4cb355f3d6 S3 Backend : Bucket key should not contain trailing slash 2022-10-31 16:19:26 -07:00
Tom Bamford
ff68c8d129
Merge pull request #31966 from kschu91/feature/azure-generic-oidc
backend/azurerm: add support for generic OIDC authentication
2022-10-31 11:25:36 +00:00
Sarah French
74e6bf08f1
Update CHANGELOG.md 2022-10-28 22:20:42 +01:00
Liam Nesteroff
5957d2657a
Update GCS backend docs for TF >=0.12 (#32065)
* Update gcs.mdx

Updated GCS remote backend to include the >=0.12 remote backend data source formatting (incl .output before output name)

* Update gcs.mdx

removed old data source example

* Update gcs.mdx

updated to local_file and output->outputs

* Update gcs.mdx

removed "outputs" from the pre 0.12 ref
2022-10-28 22:18:25 +01:00
Craig Wright
ab45c21cc1
Merge pull request #32114 from hashicorp/remove-noreviews-update
Update CONTRIBUTING.md
2022-10-28 12:08:32 -07:00
Craig Wright
3b8e97c38c
Update CONTRIBUTING.md
Removing the statement which does not reflect the current status for reviews of community-contributed pull requests.
2022-10-28 11:28:54 -07:00
James Bardin
300ad02937 don't plan data source reads during refresh-only
When executing a refresh-only plan, it is not valid to plan a data
source read. If the data source config is not known during planning, the
only valid update would be the prior state, if there is any.
2022-10-28 10:45:49 -04:00
Brandon Croft
f5de1099ff
Merge pull request #31768 from hashicorp/brandonc/providers-estimate
Update the # public providers estimate in the Terraform Intro
2022-10-25 11:19:40 -06:00
Brandon Croft
43ade2b6a1
Update website/docs/intro/index.mdx 2022-10-25 10:45:30 -06:00
Laura Pacilio
2aaaf28b75
Merge pull request #31830 from sdinay/patch-2
Update links to deprecated aws_s3_bucket_object to aws_s3_object
2022-10-25 11:17:41 -04:00
Laura Pacilio
20b3e8e5a1
Merge pull request #31792 from mferraroni/doc-s3-fix
Modifies permissions needed to use s3 with dynamoDb locks
2022-10-25 11:15:54 -04:00
Laura Pacilio
5937389c6d
Merge pull request #31597 from LiranV/patch-1
Fix can function example
2022-10-25 11:08:37 -04:00
Laura Pacilio
fbfe5b5a87
Merge pull request #31508 from wzyboy/docs/unknwon-value
docs: fix typo regarding unknown values
2022-10-25 11:07:05 -04:00
Laura Pacilio
c3c6f8327f
Merge pull request #31149 from hashicorp/docs-for-each-list-toset
fix(docs): change set to list when recommending using toset()
2022-10-25 11:04:19 -04:00
James Bardin
730756eca2
Merge pull request #32051 from hashicorp/jbardin/destroy-checkable-outputs
Clean up handling of check-related graph nodes
2022-10-20 15:40:23 -04:00
HashiBot
54de574e2b
chore: Update Digital Team Files (#32037)
* Update generated scripts (website-start.sh)

* Update generated website Makefile

* Update generated scripts (should-build.sh)

* Update generated scripts (website-build.sh)

* chore: update root `Makefile`

Co-authored-by: Kevin Wang <kwangsan@gmail.com>
2022-10-20 14:04:57 -04:00
James Bardin
92c8c76684 fix variable name 2022-10-20 13:14:16 -04:00
James Bardin
a44c859c86 update UIMode comment 2022-10-20 13:13:58 -04:00
Kevin Wang
03e262a70b
chore: rewrite internal redirects (#32038) 2022-10-20 11:31:55 -04:00
James Bardin
ac99cd6051 remove extra import line 2022-10-20 11:03:58 -04:00
James Bardin
28d5a5bf63 NoOp nodes should not have destroy edges
NoOp changes should not participate in a destroy sequence, but because
they are included as normal update nodes the usual connections were
still being made.
2022-10-20 10:59:08 -04:00
James Bardin
586401aeea make naming consistent 2022-10-20 09:36:10 -04:00
James Bardin
8a4883fd13 don't eval checks on destroy 2022-10-19 17:47:53 -04:00
James Bardin
8d11c7f524 the destroy refresh plan should be refresh-only
Refreshing for a destroy should use the refresh-only plan to avoid
planning new objects or evaluating conditions. This should also be
skipped if there is no state, since there would be nothing to refresh.
2022-10-19 17:47:53 -04:00
James Bardin
08081097cb check console with preconditions 2022-10-19 17:47:53 -04:00
James Bardin
a0723442b9 test for incorrectly evaluated outputs 2022-10-19 17:47:53 -04:00
James Bardin
333bdecf39 checks must be registered during eval 2022-10-19 17:47:53 -04:00
James Bardin
1eb22fd94a fix output transformer names
The removeRootOutputs field was not strictly used for that purpose, and
was also copied to another DestroyPlan field.
2022-10-19 17:47:42 -04:00
James Bardin
47b6386348 remove IsFullDestroy workaround
IsFullDestroy was a workaround during apply to detect when the change
set was created by a destroy plan. This no longer works correctly, and
we need to fall back to the UIMode set in the plan.
2022-10-19 14:47:06 -04:00
James Bardin
bcb792ee00 complete the root output expansion
Not all root output instances were going through proper expansion when
destroy operations were involved, leading to cases where they would be
evaluated even though the expected result was only to remove them from
the state.

Normally destroy nodes stand alone in the graph, and do not produce
references to other nodes. Because root output nodes were replaced by
expansion nodes, these were being connected via normal references, even
in the case where we were working with a destroy graph.
2022-10-19 14:42:55 -04:00
James Bardin
8a24d73d15 outputs should not be checked during destroy
Module output may need to be evaluated during destroy in order to
possibly be used by providers. The final state however is that all
objects are destroyed, so preconditions should not be evaluated.
2022-10-19 14:39:21 -04:00
James Bardin
71837d187b walkDestroy op in apply graph 2022-10-19 14:39:00 -04:00
James Bardin
5085ccdfbd fix error message 2022-10-19 14:29:34 -04:00
Liam Cervante
ab8a3f7063
Update go-cty to latest version (#32033)
* Update go-cty to latest version

* go mod tidy
2022-10-18 17:06:10 +02:00
James Bardin
713421c3ab
Merge pull request #31908 from hashicorp/bump_net
go get -u golang.org/x/net
2022-10-18 09:44:59 -04:00
Craig Wright
ae4a8ba77b
Fixing a bug introduced in the review process. 2022-10-17 14:40:47 -07:00