Commit Graph

29826 Commits

Author SHA1 Message Date
James Bardin
7da52d94f2
Merge pull request #30900 from hashicorp/jbardin/replace-triggered-by
Configurable instance replacement via lifecycle `replace_triggered_by`
2022-04-22 14:36:42 -04:00
Klaus Frank
39bbcf2f9c
Fix for newer go version (#30889)
go get for compiling and installing is deprecated. Updating it to the new "go install"
2022-04-22 14:30:35 +01:00
chavacava
5f58daaf57
fix typo in struct tag (#30884)
typo found by [`revive`](https://github.com/mgechev/revive)
2022-04-22 13:53:32 +01:00
Kevin Wang
2563bf3f96
feat: support local preview, post split; add deploy preview (#30814)
* chore: support local preview, post split

* feat: deploy preview

* update script perms
- chmod +x ./website/scripts/website-build.sh

* npm i

* chore: website-build uses 'kevin/terraform-split'

* deploy preview test

* chore: test

* PREVIEW_DIR & CLONE_DIR = preview

* rm dupe preview path

* empty commit

* ../data & ..docs

* website-preview

* remove REPO var

* move `intro` and `guides` back to where they were

* empty commit

* chore move `intro` and `guides`

* chore: copy over images

* move images into `/website`
- content API requires this

* chore: `CURRENT_GIT_BRANCH`

* fix: `CURRENT_GIT_BRANCH`

* fix `CURRENT_GIT_BRANCH`

* debug current dir

* fix `CURRENT_GIT_BRANCH`

* chore: comment CURRENT_GIT_BRANCH

* Update Makefile

* Update website/scripts/website-build.sh

* optimize images

* chore(Makefile): move vars to top

* remove branch
2022-04-21 13:58:16 -04:00
Sebastian Rivera
7d51ba5118
Merge pull request #30862 from hashicorp/update-TF-WORKSPACE-variable
Clarify that users can set TF_WORKSPACE and use tags
2022-04-21 11:01:46 -04:00
James Bardin
7b6dfabb74
Merge pull request #30906 from hashicorp/jbardin/races
Fix known races and enable race detector in tests
2022-04-21 09:47:53 -04:00
Laura Pacilio
e68ad5ec46 more edits 2022-04-20 18:57:50 -04:00
Laura Pacilio
912e6ff6de Apply suggestions from PR review 2022-04-20 18:54:50 -04:00
Laura Pacilio
a0ebb94fb5
Merge branch 'main' into update-TF-WORKSPACE-variable 2022-04-20 18:40:26 -04:00
Sebastian Rivera
2f7aa2fcb5
Merge pull request #30905 from hashicorp/sebasslash/rename-env-vars
Rename cloud env vars to use `TF_CLOUD` prefix
2022-04-20 16:35:37 -04:00
James Bardin
0693c8dfe7 enable the race detector in tests 2022-04-20 16:32:39 -04:00
James Bardin
0731213ecf sync retry goroutine return 2022-04-20 15:29:19 -04:00
James Bardin
c52e3ed37b test fixture race 2022-04-20 15:01:17 -04:00
James Bardin
0fe38fba6c prevent unsynchronized output changes access
The raw plan output changes were stored in the output exec node, when
they should have instead been fetch lazily through the context via the
synchronized ChangesSync value.
2022-04-20 14:45:58 -04:00
Sebastian Rivera
f63ef2b5ef Rename cloud env vars to use TF_CLOUD prefix 2022-04-20 14:34:53 -04:00
James Bardin
1e79682c24 minor fixes 2022-04-20 12:51:24 -04:00
Laura Pacilio
d3e660d912
Merge pull request #30772 from hashicorp/laura-update-pre-post-conditions
[WIP] Preconditions and Postconditions Content Updates
2022-04-20 12:25:43 -04:00
Laura Pacilio
b1d9339368 Final formatting nits 2022-04-20 12:19:29 -04:00
Martin Atkins
eb2724d37f
Update CHANGELOG.md 2022-04-20 09:13:17 -07:00
Martin Atkins
d4776e8ef1 lang/funcs: type conversion functions can convert null values
We had intended these functions to attempt to convert any given value, but
there is a special behavior in the function system where functions must
opt in to being able to handle dynamically-typed arguments so that we
don't need to repeat the special case for that inside every function
implementation.

In this case we _do_ want to specially handle dynamically-typed values,
because the keyword "null" in HCL produces
cty.NullVal(cty.DynamicPseudoType) and we want the conversion function
to convert it to a null of a more specific type.

These conversion functions are already just a thin wrapper around the
underlying type conversion functionality anyway, and that already supports
converting dynamic-typed values in the expected way, so we can just opt
in to allowing dynamically-typed values and let the conversion
functionality do the expected work.

Fixing this allows module authors to use type conversion functions to
give additional type information to Terraform in situations that are too
ambiguous to be handled automatically by the type inference/unification
process. Previously tostring(null) was effectively a no-op, totally
ignoring the author's request to treat the null as a string.
2022-04-20 09:09:12 -07:00
Laura Pacilio
3c7c5bbd21 add links to function and expressions; move result types back to conditionals page (oops) 2022-04-20 12:06:50 -04:00
Laura Pacilio
2a206c7984 fix incorrect HCL syntax for example 2022-04-20 11:49:33 -04:00
Laura Pacilio
7a43db405c Add link to operators page and all out other types 2022-04-20 11:46:37 -04:00
Tom Harvey
0028a26cf8
updating to include #30891 2022-04-20 17:37:08 +02:00
Tom Harvey
2eb9118cd1
backend/remote-state/azure: defaulting the Azure Backend to use MSAL (#30891)
* backend/remote-state/azure: defaulting the Azure Backend to use MSAL

Fixes #30881

* backend/remote-state/azurerm: deprecating `use_microsoft_graph`
2022-04-20 17:31:44 +02:00
Laura Pacilio
ba3bb5ad5d Apply suggestions from PR review 2022-04-20 11:30:20 -04:00
Laura Pacilio
686dbcdb8d fix confusing sentence on lifecycle page 2022-04-20 11:24:23 -04:00
Laura Pacilio
4d4d774aef fix confusing sentence on resources page 2022-04-20 11:23:15 -04:00
Laura Pacilio
ce757244f2 fix confusing sentence in outputs 2022-04-20 11:22:11 -04:00
Laura Pacilio
f660f54b87 Final nits from review 2022-04-20 11:21:11 -04:00
Laura Pacilio
e8743143e3
Update website/docs/language/data-sources/index.mdx
Co-authored-by: Alisdair McDiarmid <alisdair@users.noreply.github.com>
2022-04-20 11:17:45 -04:00
Laura Pacilio
87b09b1ee1 Fix broken HCL in example 2022-04-20 11:17:16 -04:00
James Bardin
3a0a019521 round-trip replace triggers 2022-04-20 09:17:10 -04:00
James Bardin
54c1791a1b add triggers reason to plan proto 2022-04-20 09:17:10 -04:00
James Bardin
868052c9e3 set replace_trigered_by reason in diff output 2022-04-20 09:17:10 -04:00
James Bardin
e2fc9a19f5 use ResourceInstanceReplaceByTriggers
Set ResourceInstanceReplaceByTriggers in the change.
2022-04-20 09:17:10 -04:00
James Bardin
e4c4dcbd14 add ResourceInstanceReplaceByTriggers 2022-04-20 09:17:10 -04:00
James Bardin
91121aa856 limit replace_triggered_by to same module instance
replace_triggered_by references are scoped to the current module, so we
need to filter changes for the current module instance. Rather than
creating a ConfigResource and filtering the result, make a
Changes.InstancesForAbsResource method to get only the AbsResource
changes.
2022-04-20 09:17:10 -04:00
James Bardin
fb6fcf783b Fix replace_triggered_by criteria
Only immediate changes to the resource are considered.
2022-04-20 09:17:10 -04:00
James Bardin
6670b71a2e context test demonstrating replace_triggered_by 2022-04-20 09:17:10 -04:00
James Bardin
7598665c90 check for replacement via replace_triggered_by
Check for triggered resource replacement in the plan. While the
functionality of the feature works here, we ill want to follow up with a
way to indicate in the plan _why_ the resource was replaced.
2022-04-20 09:17:10 -04:00
James Bardin
4f2195af2b collect references from replace_triggered_by
The replace_triggered_by expressions create edges in the graph, so must
be returned in the References method.
2022-04-20 09:17:10 -04:00
James Bardin
4d43d6f699 Use the EvalContext to lookup trigger changes
The EvalContext is the only place with all the information to be able to
complete the evaluation of the replace_triggered_by expressions. These
need to be evaluated into a reference, which is then looked up in the
pending changes which the context has access too. On top of needing the
plan changes, we also need access to all providers and schemas to decode
the changes if we need to traverse the resource values for individual
attributes.
2022-04-20 09:17:10 -04:00
James Bardin
8b4c89bdaf evaluate replace_triggered_by expressions
Evaluate the expressions stored in replace_triggered_by into the
*addrs.Reference needed to lookup changes in the plan.
2022-04-20 09:17:10 -04:00
James Bardin
6eb3264d1a parse replace_triggered_by in resource configs 2022-04-20 09:17:10 -04:00
James Bardin
197359cc8f update hcl for IsJSONExpression 2022-04-20 09:17:10 -04:00
Sebastian Rivera
b724dc19d2
Merge pull request #30873 from hashicorp/rt-backport-changelog
Minor changelog modifications
2022-04-19 13:31:20 -04:00
Sebastian Rivera
cd4b89add7
Merge branch 'main' into rt-backport-changelog 2022-04-19 13:30:57 -04:00
Brandon Croft
173e21a0e2
Merge pull request #30878 from hashicorp/brandonc/periods_env_creds
fix(creds): allow periods in TF_TOKEN_... credentials vars
2022-04-15 14:40:01 -06:00
Brandon Croft
1943af51a2
fix(creds): allow periods in TF_TOKEN_... credentials vars 2022-04-15 12:38:14 -06:00