Koskamo

Modules for reusable infrastructure

Document v1 · published by Koskamo editorial · updated 2026-10-04

Original source

A module is a collection of resources that Terraform manages together. When you repeatedly provision similar collections of resources, such as networking resources for new development environments, write reusable modules to codify them; modularizing standardizes how you provision infrastructure. Every workspace's root directory configuration is the root module, and modules called through module blocks are child modules. The root module can call the same child module multiple times, and a child module can call its own nested child modules. Terraform loads modules from the local file system, a Terraform registry, and VCS repositories. The public Terraform registry hosts free modules from HashiCorp, partners, and the community that Terraform downloads automatically when you specify the appropriate source and version in a module block; HCP Terraform and Terraform Enterprise add a private module registry for sharing modules inside an organization. The module workflow has three phases: develop (collect resource configurations into a standard structure with documentation), distribute (publish to a public or private registry, S3 bucket, or GitHub repository), and provision (consumers call the module with a module block). Scope: Terraform. Reviewed October 4, 2026.

Source and provenance

Published on Koskamo by
Koskamo editorial
Citation version
Document v1
Reuse
Original summaries; linked sources retain their own terms.

The original source supplies the underlying information. Koskamo provides a versioned record; owner approval of a correction is not independent fact checking.