mirror of
https://github.com/outbackdingo/certificates.git
synced 2026-01-27 10:18:34 +00:00
Remove sprig "env" and "expandenv" functions.
This commit is contained in:
@@ -21,8 +21,14 @@ type helmVariables struct {
|
||||
Provisioners []provisioner.Interface
|
||||
}
|
||||
|
||||
// WriteHelmTemplate a helm template to configure the
|
||||
// smallstep/step-certificates helm chart.
|
||||
func (p *PKI) WriteHelmTemplate(w io.Writer) error {
|
||||
tmpl, err := template.New("helm").Funcs(sprig.TxtFuncMap()).Parse(helmTemplate)
|
||||
funcs := sprig.TxtFuncMap()
|
||||
delete(funcs, "env")
|
||||
delete(funcs, "expandenv")
|
||||
|
||||
tmpl, err := template.New("helm").Funcs(funcs).Parse(helmTemplate)
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "error writing helm template")
|
||||
}
|
||||
|
||||
@@ -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(sprig.TxtFuncMap()).Parse(string(b))
|
||||
tmpl, err := template.New(t.Name).Funcs(getFuncMap()).Parse(string(b))
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "error parsing template %s", t.Name)
|
||||
}
|
||||
@@ -270,3 +270,12 @@ func mkdir(path string, perm os.FileMode) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// getFuncMap returns sprig.TxtFuncMap but removing the "env" and "expandenv"
|
||||
// functions to avoid any leak of information.
|
||||
func getFuncMap() template.FuncMap {
|
||||
m := sprig.TxtFuncMap()
|
||||
delete(m, "env")
|
||||
delete(m, "expandenv")
|
||||
return m
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user