diff --git a/adapter/provider/parser.go b/adapter/provider/parser.go index 4cf53f87..e15e9f29 100644 --- a/adapter/provider/parser.go +++ b/adapter/provider/parser.go @@ -29,9 +29,9 @@ type healthCheckSchema struct { type OverrideProxyNameSchema struct { // matching expression for regex replacement - Pattern string `provider:"pattern,omitempty"` + Pattern string `provider:"pattern"` // the new content after regex matching - Target string `provider:"target,omitempty"` + Target string `provider:"target"` } type OverrideSchema struct { @@ -49,7 +49,7 @@ type OverrideSchema struct { AdditionalPrefix *string `provider:"additional-prefix,omitempty"` AdditionalSuffix *string `provider:"additional-suffix,omitempty"` - ProxyName []*OverrideProxyNameSchema `provider:"proxy-name,omitempty"` + ProxyName []OverrideProxyNameSchema `provider:"proxy-name,omitempty"` } type proxyProviderSchema struct { diff --git a/adapter/provider/provider.go b/adapter/provider/provider.go index 8f934f16..6f895522 100644 --- a/adapter/provider/provider.go +++ b/adapter/provider/provider.go @@ -400,9 +400,9 @@ func proxiesParseAndFilter(filter string, excludeFilter string, excludeTypeArray name := mapping["name"].(string) mapping["name"] = name + *field.Interface().(*string) case "proxy-name": - exprList, ok := field.Interface().([]*OverrideProxyNameSchema) + exprList, ok := field.Interface().([]OverrideProxyNameSchema) if !ok { - return nil, errors.New("file must have a `proxy-name` field") + return nil, fmt.Errorf("can't parse proxy-provider override proxy-name, please see the docs example config") } // Iterate through all naming replacement rules and perform the replacements. for _, expr := range exprList { @@ -413,7 +413,7 @@ func proxiesParseAndFilter(filter string, excludeFilter string, excludeTypeArray } newName, err := nameReg.Replace(name, expr.Target, 0, -1) if err != nil { - return nil, errors.New("proxy name replace error") + return nil, fmt.Errorf("proxy name replace error: %w", err) } mapping["name"] = newName }