Commit Graph

30857 Commits

Author SHA1 Message Date
James Bardin
0328d116c5 initial terraform_data docs 2023-02-13 17:59:31 -05:00
yokomotod
a62f4f0763
sort modules.json for stable order (#32618) 2023-02-13 18:26:16 +01:00
Alisdair McDiarmid
b7042e818f
Merge pull request #32664 from hashicorp/alisdair/do-not-add-orphan-nodes-for-deposed-instances
Do not add orphan nodes for deposed instances
2023-02-13 09:50:48 -05:00
Alisdair McDiarmid
12d00e6571
Merge pull request #32663 from hashicorp/alisdair/read-resource-instance-state-nil-checks
Fix panic when planning orphaned deposed instances
2023-02-13 09:50:28 -05:00
Liam Cervante
d212a72d1d
structured run output: impose canonical ordering on jsonstate and jsonplan packages (#32649) 2023-02-13 15:40:17 +01:00
Liam Cervante
6a1a9928a2
[equivalence tests] Use the latest equivalence testing version when executing equivalence tests. (#32659) 2023-02-13 15:40:02 +01:00
Yin Luo
e9b066f514
Support assume role for cos backend (#32631)
* go get github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/sts/v20180813@v1.0.588

* feat:support assume_role for COS backend

* update go.mod and go.sum

* change secret_id and secret_key from required to optional

* update cos doc

* update logic by comments

* rm sensitive info in log
2023-02-13 10:25:58 +01:00
Brandon Croft
26e85685d1
Merge pull request #32647 from hashicorp/TF-4390-backport-initial-remote-state-serial-fix
Begin cloud remote state with serial > 0
2023-02-10 15:35:37 -07:00
Alisdair McDiarmid
7ecb0b8ffb Do not add orphan nodes for deposed instances
Resource instances with no current object in state should not have
orphan nodes added to the graph, as deposed objects are handled
separately. This was previously handled correctly for the non-expanded
case, but expanded resources were missing the appropriate check for a
current object.

Also update the comment in the non-expanded case to hopefully clarify
that we're checking for the presence of a current object, not the
absence of any deposed objects. An instance may have both a current
object and zero or more deposed objects in some circumstances, and if
so, we still want an orphan node to be added if the instance is not in
configuration.
2023-02-10 16:25:11 -05:00
Alisdair McDiarmid
8997e5b8c6 Fix panic when planning orphaned deposed instances 2023-02-10 15:31:21 -05:00
megan07
d7d8a2262c
Merge pull request #32557 from bharathkkb/gcs-backend-impersonate-envvar
Add a GCS backend specific env var for impersonation
2023-02-09 09:28:26 -06:00
Liam Cervante
74233ba7e0
Update CHANGELOG.md for v1.5.0 2023-02-09 13:48:26 +01:00
Liam Cervante
0d5533e189
Update main branch version to v1.5.0 2023-02-09 13:45:21 +01:00
Sebastian Rivera
de574ae6d4
Initial implementation of structured logging in cloud backend (#32504)
* Implementation of structured logging.

These are the changes that enable the cloud backend to consume
structured logs and make use of the new plan renderer. This will enable
CLI-driven runs to view the structured output in the Terraform Cloud UI.

* Cloud structured logging unit tests

* Remove deferred logs logic, fix minor issues

Color formatting fixes, log type stop lists, default behavior for logs
that are unknown

* Use service disco path in redacted plan url
2023-02-09 13:35:48 +01:00
Brandon Croft
de7304cacb
Begin cloud remote state with serial > 0 2023-02-08 14:43:57 -07:00
James Bardin
afcbff193b move CHANGELOG.md entry to v1.3 2023-02-08 11:41:42 -05:00
Liam Cervante
4fa7cd0a68
structured renderer: fix closing json tags when rendering with no symbols (#32642) 2023-02-08 16:47:12 +01:00
James Bardin
7ab4e6fe2d update CHANGELOG.md 2023-02-07 17:45:11 -05:00
James Bardin
1307317457
Merge pull request #32614 from yardbirdsax/fix/30670
make remote state initial behavior the same as local state
2023-02-07 17:43:28 -05:00
James Bardin
2d9e3da983
Update internal/states/remote/state.go
Fix from review

Co-authored-by: Nathan Mische <nmische@gmail.com>
2023-02-07 17:35:56 -05:00
Liam Cervante
896f806550
Update CHANGELOG.md 2023-02-07 09:18:00 +01:00
Liam Cervante
d818d7850d
Structured Renderer: use the new renderer when rendering the state in addition to the plan (#32629)
* Use the new renderer when rendering the state

* remove confusing and unneeded comment
2023-02-07 09:14:14 +01:00
zetHannes
c70244426a
Fix for no json output of state locking actions for --json flag (#32451)
* Add viewType to Meta object and use it at the call sites

* Assign viewType passed from flags to state-locking cli commands

* Remove temp files

* Set correct mode for statelocker depending on json flag passed to commands

* Add StateLocker interface conformation check for StateLockerJSON

* Remove empty line at end of comment

* Pass correct ViewType to StateLocker from Backend call chain

* Pass viewType to backend migration and initialization functions

* Remove json processing info in process comment

* Restore documentation style of backendMigrateOpts
2023-02-07 09:06:12 +01:00
Liam Cervante
5264510c79
Update CHANGELOG.md 2023-02-07 09:06:02 +01:00
Brandon Croft
6ad7c8ba9b
Merge pull request #32610 from hashicorp/TF-4115-backport-generic-hostname-configuration-in-cli-to-backend-remote
Backport support for generic hostname to backend/remote
2023-02-02 10:24:13 -07:00
Joshua Feierman
d45ebfbdef chore: clean-up tests & logging 2023-02-01 13:54:59 -05:00
Joshua Feierman
2576544db8 fix: remote state behavior
This makes the behavior of remote state consistent with local state in regards to the initial serial number of the generated / pushed state. Previously remote state's initial push would have a serial number of 0, whereas local state had a serial of > 0. This causes issues with the logic around, for example, ensuring that a plan file cannot be applied if state is stale (see https://github.com/hashicorp/terraform/issues/30670 for example).
2023-02-01 13:54:40 -05:00
Joshua Feierman
68e227d93d wip: refactored tests 2023-02-01 13:34:42 -05:00
Joshua Feierman
09e0dffe6c wip: failing unit test for condition 2023-02-01 13:34:42 -05:00
Brandon Croft
81a4e5ae44
Backport support for generic hostname to backend/remote 2023-01-31 15:10:53 -07:00
Brandon Croft
85eb978f92
Update CHANGELOG for generic hostname 2023-01-31 11:31:32 -07:00
Brandon Croft
0cafe0dfdb
Merge pull request #32571 from hashicorp/TF-3527-detect-alias-localterraform-com-during-terraform-init
Add support for Terraform Enterprise generic hostname localterraform.com
2023-01-31 10:59:12 -07:00
Liam Cervante
24b88b7a72
Reverse the order of conversion/defaults, and update HCL with more flexible defaults package (#32454)
* Add failing test case for the given issue

* pause

* don't use local when sending PR for review

* go get github.com/hashicorp/hcl/v2@v2.16.0

* Update go.mod

---------

Co-authored-by: Alisdair McDiarmid <alisdair@users.noreply.github.com>
2023-01-31 06:37:24 -05:00
Brandon Croft
2fe3a23094
Add generic hostname (localterraform.com) support to cloud backend
Aliases the backend hostname config as "localterraform.com" and duplicates any existing auth credentials during cloud backend configuration.
2023-01-30 17:21:24 -07:00
Brandon Croft
9fd76e56cd
Factor out terraform-config-inspect/tfconfig during init
As explained by the deleted comments, this package was used to identify situations where the `terraform 0.12upgrade` command can help migrate 0.11 syntax. Current versions of terraform don't include this command, and it's not likely that users are attempting upgrades from 0.11 to 1.4+

The replacement init swaps the order of the module and backend initialization in order to prepare for the next commit.

Config initialization now takes the following approach:
1. Load the root module, but withhold diagnostic errors until after version check
2. Initialize the backend, but withhold diagnostic errors until after version check
3. Get modules
4. Load all config (root and modules)
5. Check terraform version requirements (this can be defined by nested modules) and display any errors. It's important to show these first because prior errors could be the result of a newer terraform version syntax
6. Finally, show any errors related to backed init or config loading
2023-01-30 17:21:23 -07:00
James Bardin
fc8fed0047
Merge pull request #32583 from hashicorp/jbardin/store-null-module-outputs
save null module outputs in state
2023-01-26 15:35:48 -05:00
James Bardin
47fed6d31e save null module outputs in state
Although they are not serialized to the final stored state, all module
outputs must be saved in the state for evaluation. There is no defined
schema which is used to identify the overall type of module outputs, so
all outputs must exist in the state to build the correct type for proper
evaluation.
2023-01-26 11:03:23 -05:00
kmoe
6236fb506e
docs: http backend mtls attributes (#32580) 2023-01-26 14:52:54 +00:00
kmoe
f3a6985760
Update CHANGELOG.md 2023-01-26 14:09:50 +00:00
Sheridan C Rawlins
75e5ae27a2
[fixes 31700] Add mTLS support for http backend by way of client cert & key, as well as enterprise cacert. (#31699)
* Add mTLS support for http backend by way of client cert & key, as well as enterprise cacert.

* Fix style.

* Skip cert validation to be sure error is related to missing client cert; not untrusted server cert.

* Remove misplaced err check.

* Fix the size of test using http backend.

* Just for correctness, include all certs in the pem encoded cert - sometimes certs come with a chain of their signers.

* Adjusted names as recommended in PR comments.

* Adjusted names to be full-length and more descriptive.

* Added full-fledged testing with mTLS http server

* Fix goimports.

* Fix the names of the backend config.

* Exclusive lock for write and delete.

* Revert "Fix goimports."

This reverts commit 7d40f6099fbbb675fb2e25e35ee40aeafe3d0a22.

* goimports just for server test.

* Added the go:generation for the mock.

* Move the TLS configuration out to make it more readable - don't replace the HTTPClient as the retryablehttp already creates one - just configure its TLS.

* Just switch the client/data params - felt more natural this way.

* Update internal/backend/remote-state/http/backend.go

Co-authored-by: kmoe <5575356+kmoe@users.noreply.github.com>

* Update internal/backend/remote-state/http/testdata/gencerts.sh

Co-authored-by: kmoe <5575356+kmoe@users.noreply.github.com>

* Update internal/backend/remote-state/http/backend.go

Co-authored-by: kmoe <5575356+kmoe@users.noreply.github.com>

* Update internal/backend/remote-state/http/backend.go

Co-authored-by: kmoe <5575356+kmoe@users.noreply.github.com>

* Update internal/backend/remote-state/http/backend.go

Co-authored-by: kmoe <5575356+kmoe@users.noreply.github.com>

* Update internal/backend/remote-state/http/backend.go

Co-authored-by: kmoe <5575356+kmoe@users.noreply.github.com>

* the location of the file name is not sensitive.

* Added error if only one of client_certificate_pem and client_private_key_pem are set.

* Remove testify from test cases; use t.Error* for assert and t.Fatal* for require.

* Fixed import consistency

* Just use default openssl.

* Since file(...) is so trivial to use, changed the client cert, key, and ca cert to be the data.

See also https://github.com/hashicorp/terraform-provider-http/pull/211

Co-authored-by: Sheridan C Rawlins <scr@ouryahoo.com>
Co-authored-by: kmoe <5575356+kmoe@users.noreply.github.com>
2023-01-26 14:08:07 +00:00
James Bardin
7d2afaa2af update CHANGELOG.md 2023-01-25 15:11:54 -05:00
James Bardin
b6906f3572
Merge pull request #32563 from hashicorp/jbardin/optional-computed-comparison-next
a new method of `ProposedNew` set comparison
2023-01-25 15:05:50 -05:00
James Bardin
799f4a76ab
Merge pull request #32554 from hashicorp/jbardin/optional-computed-comparison
refactor ProposedNew
2023-01-25 15:05:39 -05:00
James Bardin
33c1ffa7c2
Merge pull request #32553 from hashicorp/jbardin/nesting-map-objchange
Fix crashes with NestingMap values
2023-01-25 15:05:27 -05:00
James Bardin
f6af5c1ef7
Merge pull request #32551 from hashicorp/jbardin/optional-computed-null
better determine when to plan optional+computed
2023-01-25 15:05:06 -05:00
James Bardin
aacbc167eb
Merge pull request #32536 from hashicorp/jbardin/optional-computed-nested-objects
Plan correct optional and computed attributes in nested objects and sets
2023-01-25 15:04:37 -05:00
James Bardin
d1d55653e4 update comment for fixed test 2023-01-25 12:11:31 -05:00
kmoe
e5c1b8f2c9
Update local-exec.mdx 2023-01-25 16:59:01 +00:00
kmoe
6c5805d560
Update CHANGELOG.md 2023-01-25 16:56:48 +00:00
Pooya
6bbb76eca3
Added Quiet value (#32116)
* Added Quiet value

* Added Quiet value

* Added Quiet value

* Removed comments on 170 171 173

Co-authored-by: itspooya <fallenangel201190@gmail.com>
2023-01-25 16:51:14 +00:00