func()

in cmd/distrogen/distribution.go [172:203]


func (d *DistributionGenerator) Generate() error {
	templateContext, err := NewTemplateContextFromSpec(d.Spec, d.Registry)
	if err != nil {
		return err
	}
	templates, err := GetEmbeddedTemplateSet(templateContext)
	if err != nil {
		return err
	}

	if d.CustomTemplatesDir != nil {
		customTemplates, err := GetTemplateSetFromDir(d.CustomTemplatesDir, templateContext)
		if err != nil {
			return err
		}

		// This merge means that any custom templates named the same as the embedded
		// defaults will overwrite the embedded version with the custom version.
		mapMerge(templates, customTemplates)
	}

	for _, tmpl := range templates {
		if err := tmpl.Render(d.GeneratePath); err != nil {
			return err
		}
	}
	if err := d.WriteSpec(); err != nil {
		return err
	}

	return nil
}