-
-
Notifications
You must be signed in to change notification settings - Fork 220
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: Fixed the for_each value depends on resource attributes that can…
…not be determined until apply (#72)
- Loading branch information
1 parent
0b40ca0
commit e6fe5ba
Showing
6 changed files
with
64 additions
and
92 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
# Notes for issue 59 and PR 72 | ||
|
||
https://github.com/terraform-aws-modules/terraform-aws-route53/pull/72 | ||
https://github.com/terraform-aws-modules/terraform-aws-route53/pull/64 | ||
|
||
``` | ||
######################################################################################## | ||
# IF YOU ARE READING THIS AND WANT TO TRY FIXING IT, PLEASE INCREASE THE COUNTER BELOW! | ||
######################################################################################## | ||
# number_of_hours_spent_on_issue_59 = 22 | ||
######################################################################################## | ||
``` | ||
|
||
## Here is the short explanation of the problem. | ||
This module can be called by TF and TG, so it has to support these 3 cases: | ||
1. Terraform with "known values" (static values) | ||
2. Terraform with "(known after apply)" (module.s3_bucket, module.cloudfront, etc) | ||
3. Terragrunt with "known values" - (TG always resolves values before calling Terraform). TG wraps values with `jsonencode()`. | ||
4. Terragrunt with "unknown values"/"(known after apply)" - this is not possible with TG. | ||
|
||
## Considerations: | ||
|
||
1. Try not to change variable types very much. `type = any` is prefered. | ||
2. Keep in mind different behaviour when `records` has different length, `records` or/and `alias` is specified. | ||
3. The same name of resources (aws_route53_record.this) should be used for both TF and TG. | ||
4. If necessary, use Terraform 1.0 as a minimum version (not newer). Terraform 0.13 can be a history, if necessary for this fix to work. | ||
|
||
## Success criteria: | ||
|
||
1. `terraform apply` in `examples/complete` should work without `-target` | ||
2. `records` should include records, alias, references to `module.s3_bucket` in `name`. | ||
3. At least, modules `zones`, `records`, and `terragrunt` should be enabled (not commented) |