in tools/generator-example-doc/main.go [35:89]
func init() {
var items []ResourceProvider
mappingJsonPath := path.Join("tools", "generator-example-doc", "resource_providers.json")
data, err := os.ReadFile(mappingJsonPath)
if err != nil {
panic(err)
}
err = json.Unmarshal(data, &items)
if err != nil {
panic(err)
}
resourceProviders = make(map[string]ResourceProvider)
for _, item := range items {
resourceProviders[strings.ToLower(item.ResourceProviderNamespace)] = item
}
var resourceTypeItems []ResourceType
resourceTypeJsonPath := path.Join("tools", "generator-example-doc", "resource_types.json")
data, err = os.ReadFile(resourceTypeJsonPath)
if err != nil {
panic(err)
}
err = json.Unmarshal(data, &resourceTypeItems)
if err != nil {
panic(err)
}
resourceTypes = make(map[string]ResourceType)
for _, item := range resourceTypeItems {
resourceTypes[strings.ToLower(item.ResourceType)] = item
}
// check duplicate resource type
resourceTypeMap := make(map[string]int)
for _, item := range resourceTypeItems {
resourceTypeMap[item.ResourceType]++
}
duplicateResourceTypes := make([]string, 0)
for k, v := range resourceTypeMap {
if v > 1 {
duplicateResourceTypes = append(duplicateResourceTypes, k)
}
}
slices.Sort(duplicateResourceTypes)
for _, item := range duplicateResourceTypes {
log.Printf("Duplicate resource type: %s", item)
}
data, err = os.ReadFile(path.Join("tools", "generator-example-doc", "template.md"))
if err != nil {
panic(err)
}
template = string(data)
}