This directory contains documentation pages for the Terraform modules in infrastructure/terraform/modules/.
The documentation uses a custom Jekyll plugin (_plugins/external_markdown.rb) to include the module READMEs without duplicating content.
The external_markdown Liquid tag allows you to include markdown files from outside the docs directory:
{% external_markdown path/to/file.md %}The path is relative to the repository root (parent of the docs/ folder).
To document a new Terraform module:
-
Create a new
.mdfile indocs/terraform-modules/named after your module -
Add appropriate frontmatter:
--- layout: default title: Module Name parent: Terraform Modules nav_order: N ---
-
Use the
external_markdowntag to include the README:{% external_markdown infrastructure/terraform/modules/MODULE_NAME/README.md %}
- No Duplication: Module READMEs are the single source of truth
- Always Up-to-Date: Documentation automatically reflects changes to module READMEs
- No Build Scripts: Pure Jekyll solution with no pre-processing needed
- Easy to Maintain: Just add a simple stub page for each new module
See terraform-modules/lambda.md for a complete example.