argoproj/argo-workflows · error

failure to create dynamic client: %w

Error message

failure to create dynamic client: %w

What it means

After building the merged rest.Config, dynamic.NewForConfig failed — the config is syntactically unusable for the dynamic client (e.g. malformed host URL). This is a per-request auth-path failure in DefaultClientForAuthorization.

Source

Thrown at server/auth/gatekeeper.go:350

	if fields == nil {
		fields = logging.Fields{}
	}
	fields["subject"] = claims.Subject
	if claims.Email != "" {
		fields["email"] = claims.Email
	}
	return fields
}

func DefaultClientForAuthorization(authorization string, config *rest.Config) (*rest.Config, *servertypes.Clients, error) {
	restConfig, err := kubeconfig.GetRestConfig(authorization)
	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,

View on GitHub (pinned to 35bff19146)

Solutions

  1. Check the server's kubeconfig/host configuration
  2. Fix the Authorization credential so the derived rest.Config is valid
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at server/auth/gatekeeper.go:350 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/c7d90101321dcf86. Report an issue: GitHub.