in provider-schema/processors/combine.go [12:39]
func CombineSchemaAndMarkdown(providerSchema *schema.ProviderSchema, markdownDocs map[string]*model.ResourceDoc) (TerraformObjects, error) {
terraformObjects := make(TerraformObjects)
// Combine resources and data sources
for name, resourceSchema := range providerSchema.ResourceSchemas {
terraformObject := &TerraformObject{
Name: name,
Fields: make(map[string]*schema.SchemaAttribute),
}
terraformObjects[name] = terraformObject
markdownDoc, exists := markdownDocs[name]
if !exists || markdownDoc == nil {
//fmt.Println("Resource/DataSource not found in documentation:", name)
continue
}
terraformObject.ExampleHCL = markdownDoc.ExampleHCL
terraformObject.Timeouts = markdownDoc.Timeouts
terraformObject.Import = markdownDoc.Import
terraformObject.Details = extractDetails(markdownDoc.Content)
// Inject descriptions from markdown into the providerSchema fields
combineFieldsRecursively(name, resourceSchema.Block, markdownDoc.AllProp(), terraformObject.Fields, "")
}
return terraformObjects, nil
}