Releases: cloudposse/terraform-yaml-stack-config
v1.8.0 [remote-state] Improve backend compatibility
Among other things detailed below, this release enables users to fix deprecation warnings like:
│ Warning: Deprecated Parameters
│
│ with module.account_map.data.terraform_remote_state.data_source[0],
│ on .terraform/modules/account_map/modules/remote-state/data-source.tf line 88, in data "terraform_remote_state" "data_source":
│ 88: data "terraform_remote_state" "data_source" {
│
│ The following parameters have been deprecated. Replace them as follows:
│ * role_arn -> assume_role.role_arn
If you are receiving deprecation warnings from remote-state, they can now be resolved by updating your backend
/remote_state_backend
configuration to match the version of Terraform or Tofu you are using. For example, change
terraform:
backend:
s3:
bucket: my-tfstate-bucket
dynamodb_table: my-tfstate-lock-table
role_arn: arn:aws:iam::123456789012:role/my-tfstate-access-role
remote_state_backend:
s3:
role_arn: arn:aws:iam::123456789012:role/my-tfstate-access-read-only-role
to
terraform:
backend:
s3:
bucket: my-tfstate-bucket
dynamodb_table: my-tfstate-lock-table
assume_role:
role_arn: arn:aws:iam::123456789012:role/my-tfstate-access-role
remote_state_backend:
s3:
assume_role:
role_arn: arn:aws:iam::123456789012:role/my-tfstate-access-read-only-role
🚀 Enhancements
[remote-state] Improve backend compatibility @Nuru (#105)
## what- Improve remote-state backend compatibility
Rather than trying to parse the backend configuration, as a general rule we now just pass it through to the data source. This provides future-proof compatibility with all backends supported by Terraform and OpenTofu.
why
- This prevents the need for updates like #99 to provide configuration for future S3 backends, while eliminating compatibility issues like #102.
- This also eliminates deprecation warnings caused by forcing configuration to look a certain way.
- Now, users can manage their own remote state configuration to match their toolset.
references
- Closes #102
v1.7.0 (not recommended)
feat: support for gcs backends @burnzy (#95)
## whatSimple change to add support for GCS backends
why
Allows GCP users (users with gcs backends) to make use of this remote-state module for sharing data between components.
references
🚀 Enhancements
Support local backend @Nuru (#104)
## what- Support retrieving remote state from local backends
- NOTE: Using relative paths in local backends is tricky, because the path needs to resolve to the same directory from the source root module directory as from the client root module directory.
- Fix Terratests
- The
spacelift
test suite is broken, and we never previously required it to work, so it is now skipped
- The
- Update test suite to use
go
v1.21 and update dependencies
why
🤖 Automatic Updates
Bump the go_modules group in /test/src with 5 updates @dependabot (#94)
Bumps the go_modules group in /test/src with 5 updates:Package | From | To |
---|---|---|
github.com/hashicorp/go-getter | 1.7.1 |
1.7.5 |
golang.org/x/crypto | 0.1.0 |
0.17.0 |
golang.org/x/net | 0.8.0 |
0.10.0 |
google.golang.org/grpc | 1.51.0 |
1.56.3 |
google.golang.org/protobuf | 1.28.1 |
1.30.0 |
Updates github.com/hashicorp/go-getter
from 1.7.1 to 1.7.5
Release notes
Sourced from github.com/hashicorp/go-getter's releases.
v1.7.5
What's Changed
- Prevent Git Config Alteration on Git Update by
@dduzgun-security
in hashicorp/go-getter#497New Contributors
@dduzgun-security
made their first contribution in hashicorp/go-getter#497Full Changelog: hashicorp/go-getter@v1.7.4...v1.7.5
v1.7.4
What's Changed
- Escape user-provided strings in
git
commands hashicorp/go-getter#483- Fixed a bug in
.netrc
handling if the file does not exist hashicorp/go-getter#433Full Changelog: hashicorp/go-getter@v1.7.3...v1.7.4
v1.7.3
What's Changed
- SEC-090: Automated trusted workflow pinning (2023-04-21) by
@hashicorp-tsccr
in hashicorp/go-getter#432- SEC-090: Automated trusted workflow pinning (2023-09-11) by
@hashicorp-tsccr
in hashicorp/go-getter#454- SEC-090: Automated trusted workflow pinning (2023-09-18) by
@hashicorp-tsccr
in hashicorp/go-getter#458- don't change GIT_SSH_COMMAND when there is no sshKeyFile by
@jbardin
in hashicorp/go-getter#459New Contributors
@hashicorp-tsccr
made their first contribution in hashicorp/go-getter#432Full Changelog: hashicorp/go-getter@v1.7.2...v1.7.3
v1.7.2
What's Changed
- Don't override
GIT_SSH_COMMAND
when not needed by@nl-brett-stime
hashicorp/go-getter#300Full Changelog: hashicorp/go-getter@v1.7.1...v1.7.2
Commits
5a63fd9
Merge pull request #497 from hashicorp/fix-git-update5b7ec5f
fetch tags on update and fix tests9906874
recreate git config during update to prevent config alteration268c11c
escape user provide string to git (#483)975961f
Merge pull request #433 from adrian-bl/netrc-fix0298a22
Merge pull request #459 from hashicorp/jbardin/setup-git-envc70d9c9
don't change GIT_SSH_COMMAND if there's no keyfile3d5770f
Merge pull request #458 from hashicorp/tsccr-auto-pinning/trusted/2023-09-180688979
Result of tsccr-helper -log-level=info -pin-all-workflows .e66f244
Merge pull request #454 from hashicorp/tsccr-auto-pinning/trusted/2023-09-11- Additional commits viewable in compare view
Updates golang.org/x/crypto
from 0.1.0 to 0.17.0
Commits
9d2ee97
ssh: implement strict KEX protocol changes4e5a261
ssh: close net.Conn on all NewServerConn errors152cdb1
x509roots/fallback: update bundlefdfe1f8
ssh: defer channel window adjustmentb8ffc16
blake2b: drop Go 1.6, Go 1.8 compatibility7e6fbd8
ssh: wrap errors from client handshakebda2f3f
argon2: avoid clobbering BP325b735
ssh/test...
v1.6.0 (not recommended)
NOTE: Requires Terraform v1.6.4 or later to work with S3 backends. See #102
what
Add options required by S3-compatible backend for Oracle Cloud Infrastructure as described here
why
Some of the options available for S3 backend for Terraform are not supported by remote-state module. However, they are useful when working with cloud providers other than AWS.
references
v1.5.0
update version pinning of cloudposse/utils @mcalhoun (#68)
what
Update the pinning of upstream cloudposse/utils
to <2.0.0
why
We previously added this pinning because we mistakenly released some changes to the provider without testing backward compatibility and left customers in a broken state. In future releases of cloudposse/utils
we will release any potential breaking changes as 2.0.0
. Pinning to <2.0.0
will allow us to continue to take advantage of bug fixes in the 1.x.x
versions and allow the caller to specify a pinned version in their root module if desired.
v1.4.3
Sync github @max-lobur (#65)
Rebuild github dir from the template
🚀 Enhancements
Update `remote-state` module @aknysh (#66)
what
- Update
remote-state
module - Add example using
bypass=true
- Update terratest
- Update Go to 1.20
why
- If
var.bypass
is set totrue
, don't call the datasources, just return the defaults
test
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: Outputs:
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66:
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: remote_state_using_context = {
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "val1" = true
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "val2" = "2"
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "val3" = 3
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "val4" = null
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: }
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: remote_state_using_context_ignore_errors = {
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "default_output" = "default-value"
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: }
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: remote_state_using_stack = {
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "val1" = true
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "val2" = "2"
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "val3" = 3
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "val4" = null
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: }
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: remote_state_with_bypass = {
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: "default_output" = "default-value"
TestExamplesRemoteState 2023-06-02T04:23:42Z logger.go:66: }
v1.4.2
🚀 Enhancements
Update "cloudposse/utils" provider versions. Update GitHub workflows @aknysh (#64)
what
- Update
cloudposse/utils
provider versions - Update GitHub workflows
why
- Use the latest
utils
provider (added new features, see https://github.com/cloudposse/terraform-provider-utils/releases/tag/1.8.0) - Keep up to date
references
Supersedes and close #63
v1.4.1
v1.4.0
add azurerm backend to remote-state @SlavaNL (#61)
what
- Allow to use
azurerm
backend to read a state from
why
- Currently only
s3
andremote
backend supported
references
v1.3.1
This release is fully backward compatible with v1.1.1 and earlier, and has a workaround for hashicorp/terraform#32023 in the remote-state
module. Use of version 1.2.0 or 1.3.0 is not recommended.