Crates.io | tfdoc |
lib.rs | tfdoc |
version | 0.1.5 |
source | src |
created_at | 2019-03-21 03:14:49.2989 |
updated_at | 2019-03-22 00:55:58.895352 |
description | Generate Terraform module documentation |
homepage | |
repository | https://github.com/maur1th/tfdoc |
max_upload_size | |
id | 122854 |
size | 78,729 |
This project aims at generating Terraform module documentation.
tfdoc will parse all the files within a module's directory and generate a README.tf accordingly:
# Title: The name of the module
# Top comment prefixed by "Title: " and the following lines
# will be at the top of the Markdown file
variable "environment" {
description = "Variable descriptions will be parsed"
}
# tfdoc keeps comments right on top of resource, variable
# and output blocks. All variables and outputs are kept.
# Only resources with comments on top are.
resource "aws_instance" "this" {
# stuff
}
resource "aws_instance" "no_comment_here" {
# stuff
}
##
## tfdoc discards other "orphaned" comments
##
# We can have both comments on top
output "name" {
description = "and within outputs and variables"
}
# Data blocks are ignored
data "aws_ami" "node" {}
$ tfdoc $PATH_TO_MODULE
# The name of the module
Top comment prefixed by "Title: " and the following lines will be at the top of the Markdown file
## Resources
* `aws_instance.this`: tfdoc keeps comments right on top of resource, variable and output blocks. All variables and outputs are kept. Only resources with comments on top are.
## Inputs
* `environment`: Variable descriptions will be parsed
## Outputs
* `name`: We can have both comments on top and within outputs and variables
Original idea by https://github.com/jyrivallan