refactor: define regexs at package scope

Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
pull/13586/head
Jesse Simpson 6 months ago
parent cbdc22128e
commit 5202820f2f
No known key found for this signature in database
GPG Key ID: 237495C89AB0AAFC

@ -33,6 +33,14 @@ import (
chartutil "helm.sh/helm/v4/pkg/chart/v2/util" chartutil "helm.sh/helm/v4/pkg/chart/v2/util"
) )
// taken from https://cs.opensource.google/go/go/+/refs/tags/go1.23.6:src/text/template/exec.go;l=141
// > "template: %s: executing %q at <%s>: %s"
var execErrFmt = regexp.MustCompile(`^template: (?P<templateName>(?U).+): executing (?P<functionName>(?U).+) at (?P<location>(?U).+): (?P<errMsg>(?U).+)(?P<nextErr>( template:.*)?)$`)
// taken from https://cs.opensource.google/go/go/+/refs/tags/go1.23.6:src/text/template/exec.go;l=138
// > "template: %s: %s"
var execErrFmtWithoutTemplate = regexp.MustCompile(`^template: (?P<templateName>(?U).+): (?P<errMsg>.*)(?P<nextErr>( template:.*)?)$`)
// Engine is an implementation of the Helm rendering implementation for templates. // Engine is an implementation of the Helm rendering implementation for templates.
type Engine struct { type Engine struct {
// If strict is enabled, template rendering will fail if a template references // If strict is enabled, template rendering will fail if a template references
@ -344,20 +352,6 @@ func cleanupExecError(filename string, err error) error {
return err return err
} }
// taken from https://cs.opensource.google/go/go/+/refs/tags/go1.23.6:src/text/template/exec.go;l=138
// > "template: %s: %s"
// taken from https://cs.opensource.google/go/go/+/refs/tags/go1.23.6:src/text/template/exec.go;l=141
// > "template: %s: executing %q at <%s>: %s"
execErrFmt, compileErr := regexp.Compile(`^template: (?P<templateName>(?U).+): executing (?P<functionName>(?U).+) at (?P<location>(?U).+): (?P<errMsg>(?U).+)(?P<nextErr>( template:.*)?)$`)
if compileErr != nil {
return err
}
execErrFmtWithoutTemplate, compileErr := regexp.Compile(`^template: (?P<templateName>(?U).+): (?P<errMsg>.*)(?P<nextErr>( template:.*)?)$`)
if compileErr != nil {
return err
}
tokens := strings.SplitN(err.Error(), ": ", 3) tokens := strings.SplitN(err.Error(), ": ", 3)
if len(tokens) != 3 { if len(tokens) != 3 {
// This might happen if a non-templating error occurs // This might happen if a non-templating error occurs

Loading…
Cancel
Save