Terraform has been developed by HashiCorp and it is an AWS Partner Network Advanced Technology Partner and member of AWS DevOps Competency and an ‘infrastructure as code’ tool just like the AWS CloudFormation that lets you to create, upgrade and version the Amazon Web Services (AWS) infrastructure. The tool has a large number of features which is perfect for addition in your tool belt. The tool has a friendly custom syntax and also has support for JSON. It has a built-in feature of graphing for visualizing the infrastructure. The tool understands resource relationships and has a open source project with a community of many contributors who add features and updates.
The tool has the ability for breaking down configuration into small chunks for improved organization, re-use and maintainability. You can directly offer the AWS access key to Terraform but it is better to use a credential profile that has been already configured by an AWS Software Developer Kits (SDKs). It prevents you from maintaining secrets in various locations and already committing the secrets to the version control. You can also use Terraform from one or more control servers that have been using an AWS Identity and Access Management (IAM) instance profile.
However, users have been facing an pop up error in this service which says ‘Error verifying checksum for provider AWS’. It further extends saying that the checksum for provider distribution from the Terraform registry did not match the source. This might mean that the distributed files were changed after this version was released to the Registry. Users have consistently faced this issue while running in docker. They have not been able to fix it but it might happen because of the HTTP connection to the domain which hosts the plugins terminating early. Users have been able to reproduce it with the use of curl but the connection gets closed on the docker side but not on the host side. This has not yet happened in terms of any other domain.
Well you must note that this normally happens if there is a cache issue and in this kind of scenario, devs from HashiCorp resolves the problem by purging the cache and publishing the correct checksums.