kops/protokube/pkg/protokube/models.go

30 lines
573 B
Go

package protokube
import (
"bytes"
"fmt"
"text/template"
)
func ExecuteTemplate(key string, contents string, model interface{}) (string, error) {
t := template.New(key)
//funcMap := make(template.FuncMap)
//t.Funcs(funcMap)
_, err := t.Parse(contents)
if err != nil {
return "", fmt.Errorf("error parsing template %q: %v", key, err)
}
t.Option("missingkey=zero")
var buffer bytes.Buffer
err = t.ExecuteTemplate(&buffer, key, model)
if err != nil {
return "", fmt.Errorf("error executing template %q: %v", key, err)
}
return buffer.String(), nil
}