Terraform: Duplicate required providers configuration
- Dominant language
- Python
- Stars
- 11.1k
- Forks
- 1k
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 2
Description
With the changes made in #1867 to use `required_providers`, this causes an issue for projects that use additional Terraform configuration around what Chalice generates, and use providers outside of what Chalice specifies. Since Terraform version 0.13, only a single `required_providers` block is allowed. They will not get merged. So this means additional providers cannot be specified, or even just alternative provider constraints.
The way I have worked around the issue is that I place the Terraform configuration Chalice generates inside its own sub-directory within my other Terraform configuration and just treat it like a module. This means i need to specify additional `variables.tf` and `outputs.tf` where I need it but overall has worked well.
There may not be any programmatic changes needed for this, possibly some enhancements, but initially just maybe documentation changes and examples of how Chalice generated Terraform could be used in this case.
Thoughts?
Contributor guide
Research direction
Start by reviewing the Terraform configuration generated by Chalice and the Terraform 0.13 restriction on a single required_providers block. Use the described module layout, including variables.tf and outputs.tf, as the basis for documenting how to add providers and constraints around generated configuration; done means the supported workflow and an example are clear.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- terraform
- Domain
- infrastructure
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100