kubernetes/kops · critical
error registering kops/v1alpha2 API: %v
Error message
error registering kops/v1alpha2 API: %v
What it means
buildScheme registers the kops v1alpha2 API types into the runtime scheme; this wraps v1alpha2.AddToScheme failing. As with the other scheme registrations, it is an internal setup step that only fails due to a code-generation or build inconsistency, not user input.
Source
Thrown at cmd/kops-controller/main.go:295
setupLog.Error(err, "registering Cluster API controllers")
os.Exit(1)
}
}
setupLog.Info("starting manager")
if err := mgr.Start(ctrl.SetupSignalHandler()); err != nil {
setupLog.Error(err, "problem running manager")
os.Exit(1)
}
}
func buildScheme(opt *config.Options) (*runtime.Scheme, error) {
scheme := runtime.NewScheme()
if err := corev1.AddToScheme(scheme); err != nil {
return nil, fmt.Errorf("error registering corev1: %v", err)
}
if err := v1alpha2.AddToScheme(scheme); err != nil {
return nil, fmt.Errorf("error registering kops/v1alpha2 API: %v", err)
}
// Needed so that the leader-election system can post events
if err := coordinationv1.AddToScheme(scheme); err != nil {
return nil, fmt.Errorf("error registering coordinationv1: %v", err)
}
if opt.CAPI.IsEnabled() {
if err := bootstrapapi.AddToScheme(scheme); err != nil {
return nil, fmt.Errorf("error registering kops bootstrap cluster API: %v", err)
}
if err := controlplaneapi.AddToScheme(scheme); err != nil {
return nil, fmt.Errorf("error registering kops control-plane cluster API: %v", err)
}
}
return scheme, nil
}
func addNodeController(ctx context.Context, mgr manager.Manager, opt *config.Options) error {View on GitHub (pinned to 4c8573c808)
Solutions
- Run `go mod tidy` / `make gomod` to reconcile module versions
- Check for duplicate imports of k8s.io/kops APIs at different versions
- Rebuild the binary after dependency cleanup
Defensive patterns
Strategy: validation
Validate before calling
if err := v1alpha2.AddToScheme(scheme); err != nil {
return nil, err
}
Prevention
- Avoid vendoring multiple copies of the kops API package
- Run `go mod tidy` / `make gomod` after upgrades
- Smoke-test buildScheme in CI
When it happens
Trigger: v1alpha2.AddToScheme(scheme) errors — same class of failure as corev1: duplicate/incompatible registration caused by mismatched kops API package versions.
Common situations: Version skew between k8s.io/* dependencies and the kops API package, or a build vendoring two copies of the kops API types.
Related errors
- error registering corev1: %v
- error creating KopsConfig controller: %w
- clientset is not initialized
- error registering coordinationv1: %v
- error registering kops bootstrap cluster API: %v
AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05).
Data as JSON: /api/errors/76ee34a9c0cfeb84.
Report an issue: GitHub.