argoproj/argo-workflows · error
failure to create kubernetes client: %w
Error message
failure to create kubernetes client: %w
What it means
DefaultClientForAuthorization failed to build the core Kubernetes clientset (kubernetes.NewForConfig) from the derived rest.Config — the last client-initialization step before the Clients struct can be returned.
Source
Thrown at server/auth/gatekeeper.go:362
if err != nil {
return nil, nil, fmt.Errorf("failed to create REST config: %w", err)
}
restConfig = mergeServerRestConfig(config, restConfig)
dynamicClient, err := dynamic.NewForConfig(restConfig)
if err != nil {
return nil, nil, fmt.Errorf("failure to create dynamic client: %w", err)
}
wfClient, err := workflow.NewForConfig(restConfig)
if err != nil {
return nil, nil, fmt.Errorf("failure to create workflow client: %w", err)
}
eventsClient, err := events.NewForConfig(restConfig)
if err != nil {
return nil, nil, fmt.Errorf("failure to create events client: %w", err)
}
kubeClient, err := kubernetes.NewForConfig(restConfig)
if err != nil {
return nil, nil, fmt.Errorf("failure to create kubernetes client: %w", err)
}
return restConfig, &servertypes.Clients{
Dynamic: dynamicClient,
Workflow: wfClient,
Events: eventsClient,
Kubernetes: kubeClient,
}, nil
}
func mergeServerRestConfig(argoServerConfig *rest.Config, newConfig *rest.Config) *rest.Config {
newConfig.Burst = argoServerConfig.Burst
newConfig.QPS = argoServerConfig.QPS
newConfig.UserAgent = argoServerConfig.UserAgent
// TO DO: Merge other common configurations,such as RateLimiter.
return newConfig
}
View on GitHub (pinned to 35bff19146)
Solutions
- Inspect the wrapped client-go error
- Verify kubeconfig endpoint and certificate data on the server
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at server/auth/gatekeeper.go:362 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of argoproj/argo-workflows@35bff19146 (2026-09-03).
Data as JSON: /api/errors/f67a5c6bdf90ce55.
Report an issue: GitHub.