Replace pkger with embed.FS compatibility

This commit is contained in:
Katrina Verey
2021-05-17 09:26:30 -07:00
parent 53c87a32e9
commit 3f3d3b17a4
59 changed files with 888 additions and 357 deletions

View File

@@ -15,13 +15,23 @@ import (
// ResourceTemplate generates resources from templates.
type ResourceTemplate struct {
// Templates is a function that returns a list of templates to render into one or more resources.
Templates TemplatesFunc
// Templates provides a list of templates to render into one or more resources.
Templates TemplateParser
// TemplateData is the data to use when rendering the templates provided by the Templates field.
TemplateData interface{}
}
type TemplateParser interface {
Parse() ([]*template.Template, error)
}
type TemplateParserFunc func() ([]*template.Template, error)
func (s TemplateParserFunc) Parse() ([]*template.Template, error) {
return s()
}
// DefaultTemplateData sets TemplateData to the provided default values if it has not already
// been set.
func (rt *ResourceTemplate) DefaultTemplateData(data interface{}) {
@@ -38,7 +48,7 @@ func (rt *ResourceTemplate) Render() ([]*yaml.RNode, error) {
return items, nil
}
templates, err := rt.Templates()
templates, err := rt.Templates.Parse()
if err != nil {
return nil, errors.WrapPrefixf(err, "failed to retrieve ResourceTemplates")
}