in adapter/pkg/provider/provider.go [73:93]
func NewProvider(baseURL string, metricRegex string, refreshRegistryInterval time.Duration, namespace string) (apiprovider.ExternalMetricsProvider, error) {
fs := flag.NewFlagSet("mock", flag.ContinueOnError)
var k stringValue
if err := k.Set(baseURL); err != nil {
return nil, fmt.Errorf("failed to set OAP address: %v", err)
}
fs.Var(&k, "base-url", "")
ctx := cli.NewContext(nil, fs, nil)
if url := ctx.GlobalString("base-url"); url != k.String() {
return nil, fmt.Errorf("failed to set base-url: %s", url)
}
provider := &externalMetricsProvider{
ctx: ctx,
regex: metricRegex,
refreshRegistryInterval: refreshRegistryInterval,
namespace: namespace,
}
provider.sync()
return provider, nil
}