Modules

For more information on Terraform please check here

While providers are responsible for interfacing with the APIs of the service you’re managing (like Dell PowerFlex, Dell iDrac (RedFish) etc.), modules are self-contained packages of Terraform configurations that encapsulate a set of resources and policies that can be reused across different environments or projects. Modules have many advantages like reusability, versioning, organizing (the code) etc. In the context of Terraform, the root module is the starting point for Terraform operations and can call any number of child modules. The root module is where you define your Terraform providers and configure the backend. Child modules, on the other hand, are like templates that define how to create a specific resource or set of resources. They are instantiated by the root module with specific values for their input variables.