in renderer/renderer.go [71:101]
func renderTemplate(tmpl *template.Template, conf *config.Config, fileExtension string, gvds []types.GroupVersionDetails) error {
switch conf.OutputMode {
case config.OutputModeSingle:
fileName := fmt.Sprintf("%s.%s", "out", fileExtension)
file, err := createOutFile(conf.OutputPath, false, fileName)
defer file.Close()
if err != nil {
return err
}
if err := tmpl.ExecuteTemplate(file, mainTemplate, gvds); err != nil {
return err
}
case config.OutputModeGroup:
for _, gvd := range gvds {
fileName := fmt.Sprintf("%s.%s", gvd.Group, fileExtension)
file, err := createOutFile(conf.OutputPath, true, fileName)
defer file.Close()
if err != nil {
return err
}
if err := tmpl.ExecuteTemplate(file, mainTemplate, []types.GroupVersionDetails{gvd}); err != nil {
return err
}
}
}
return nil
}