{"record":{"id":"c3085b30b5a52b56","repo":"grafana/k6","slug":"missing-or-invalid-config-w","errorCode":null,"errorMessage":"missing or invalid config: %w","messagePattern":"missing or invalid config: %w","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"internal/secretsource/url/url.go","lineNumber":136,"sourceCode":"\t}\n\n\tif cfg.RetryBackoff.Valid {\n\t\tresult.RetryBackoff = cfg.RetryBackoff\n\t}\n\n\treturn result\n}\n\n//nolint:gochecknoinits // This is how k6 secret source registration works.\nfunc init() {\n\tsecretsource.RegisterExtension(\"url\", New)\n}\n\n// New creates a URL secret source. Exported for direct use by the cloud source.\nfunc New(params secretsource.Params) (secretsource.Source, error) {\n\tconfig, err := getConfig(params.ConfigArgument, params.FS, params.Environment)\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"missing or invalid config: %w\", err)\n\t}\n\n\treturn &urlSecrets{\n\t\tconfig: config,\n\t\thttpClient: &http.Client{\n\t\t\tTimeout: time.Duration(config.Timeout.Duration),\n\t\t},\n\t\tlimiter: newLimiter(int(config.RequestsPerMinuteLimit.Int64), int(config.RequestsBurst.Int64)),\n\t\tlogger:  params.Logger,\n\t}, nil\n}\n\ntype urlSecrets struct {\n\tconfig     extConfig\n\thttpClient *http.Client\n\tlimiter    limiter\n\tlogger     logrus.FieldLogger\n}","sourceCodeStart":118,"sourceCodeEnd":154,"githubUrl":"https://github.com/grafana/k6/blob/01ffac6f245854c1b8adc6a69857c76a15f90022/internal/secretsource/url/url.go#L118-L154","documentation":"Constructing the URL secret source failed at its configuration step: getConfig could not build the config from the argument string, config file, or environment. New wraps the cause as a missing/invalid config sentinel-style message.","triggerScenarios":"Thrown at internal/secretsource/url/url.go:136 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Inspect the wrapped error for the exact config problem","Ensure the url secret source argument uses key=value pairs and includes a valid urlTemplate with {key}"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"01ffac6f245854c1b8adc6a69857c76a15f90022","analyzedAt":"2026-08-18T03:05:52.393Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}