Merge pull request #729 from smallstep/funcmap

Use the common method for template functions
This commit is contained in:
Mariano Cano 2021-10-28 15:34:43 -07:00 committed by GitHub
commit d68090ebce
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 9 deletions

View file

@ -4,11 +4,11 @@ import (
"io"
"text/template"
"github.com/Masterminds/sprig/v3"
"github.com/pkg/errors"
"github.com/smallstep/certificates/authority"
authconfig "github.com/smallstep/certificates/authority/config"
"github.com/smallstep/certificates/authority/provisioner"
"github.com/smallstep/certificates/templates"
"go.step.sm/linkedca"
)
@ -24,11 +24,7 @@ type helmVariables struct {
// WriteHelmTemplate a helm template to configure the
// smallstep/step-certificates helm chart.
func (p *PKI) WriteHelmTemplate(w io.Writer) error {
funcs := sprig.TxtFuncMap()
delete(funcs, "env")
delete(funcs, "expandenv")
tmpl, err := template.New("helm").Funcs(funcs).Parse(helmTemplate)
tmpl, err := template.New("helm").Funcs(templates.StepFuncMap()).Parse(helmTemplate)
if err != nil {
return errors.Wrap(err, "error writing helm template")
}

View file

@ -183,7 +183,7 @@ func (t *Template) Load() error {
// the template fails.
func (t *Template) LoadBytes(b []byte) error {
t.backfill(b)
tmpl, err := template.New(t.Name).Funcs(getFuncMap()).Parse(string(b))
tmpl, err := template.New(t.Name).Funcs(StepFuncMap()).Parse(string(b))
if err != nil {
return errors.Wrapf(err, "error parsing template %s", t.Name)
}
@ -271,9 +271,9 @@ func mkdir(path string, perm os.FileMode) error {
return nil
}
// getFuncMap returns sprig.TxtFuncMap but removing the "env" and "expandenv"
// StepFuncMap returns sprig.TxtFuncMap but removing the "env" and "expandenv"
// functions to avoid any leak of information.
func getFuncMap() template.FuncMap {
func StepFuncMap() template.FuncMap {
m := sprig.TxtFuncMap()
delete(m, "env")
delete(m, "expandenv")