{"record":{"id":"0c9d91e362129719","repo":"kubernetes/kubernetes","slug":"q-does-not-take-any-arguments-got-q-0c9d91","errorCode":null,"errorMessage":"%q does not take any arguments, got %q","messagePattern":"%q does not take any arguments, got %q","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cmd/kube-controller-manager/app/controllermanager.go","lineNumber":167,"sourceCode":"\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\t// add feature enablement metrics\n\t\t\tfg := s.ComponentGlobalsRegistry.FeatureGateFor(basecompatibility.DefaultKubeComponent)\n\t\t\tfg.(featuregate.MutableFeatureGate).AddMetrics()\n\t\t\t// add component version metrics\n\t\t\ts.ComponentGlobalsRegistry.AddMetrics()\n\n\t\t\tif utilfeature.DefaultFeatureGate.Enabled(cmfeatures.ControllerManagerReleaseLeaderElectionLockOnExit) {\n\t\t\t\tctx = server.SetupSignalContext()\n\t\t\t}\n\t\t\treturn Run(ctx, c.Complete())\n\t\t},\n\t\tArgs: func(cmd *cobra.Command, args []string) error {\n\t\t\tfor _, arg := range args {\n\t\t\t\tif len(arg) > 0 {\n\t\t\t\t\treturn fmt.Errorf(\"%q does not take any arguments, got %q\", cmd.CommandPath(), args)\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn nil\n\t\t},\n\t}\n\n\tfs := cmd.Flags()\n\tnamedFlagSets := s.Flags(KnownControllers(), ControllersDisabledByDefault(), ControllerAliases())\n\ts.ParsedFlags = &namedFlagSets\n\tverflag.AddFlags(namedFlagSets.FlagSet(\"global\"))\n\tglobalflag.AddGlobalFlags(namedFlagSets.FlagSet(\"global\"), cmd.Name(), logs.SkipLoggingConfigurationFlags())\n\tfor _, f := range namedFlagSets.FlagSets {\n\t\tfs.AddFlagSet(f)\n\t}\n\n\tcols, _, _ := term.TerminalSize(cmd.OutOrStdout())\n\tcliflag.SetUsageAndHelpFunc(cmd, namedFlagSets, cols)\n","sourceCodeStart":149,"sourceCodeEnd":185,"githubUrl":"https://github.com/kubernetes/kubernetes/blob/b882c60b4023bdf09264c2d5d30a2cadebc240fb/cmd/kube-controller-manager/app/controllermanager.go#L149-L185","documentation":"Emitted by the cobra Args validator on the kube-controller-manager command. Like kube-apiserver, kube-controller-manager is flag-only and rejects any positional argument; the validator fails on the first non-empty token and reports the full args slice.","triggerScenarios":"Invoking `kube-controller-manager <token>` where <token> is not a flag, e.g. `kube-controller-manager --leader-elect run`.","commonSituations":"Leftover subcommand from hyperkube-era invocation; a wrapper appending a node name or profile name as a positional arg.","solutions":["Remove all positional arguments; kube-controller-manager only accepts --flag=value.","Audit the systemd ExecStart / container command for stray tokens.","Use --controllers flags to select controllers instead of positional names."],"exampleFix":"// before\nkube-controller-manager --leader-elect=true run\n// after\nkube-controller-manager --leader-elect=true","handlingStrategy":"validation","validationCode":"func validateArgs(binary string, args []string) error {\n    for _, a := range args {\n        if a != \"\" { return fmt.Errorf(\"%s takes no positional args, got %v\", binary, args) }\n    }\n    return nil\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["kube-controller-manager is flag-only; never append subcommands.","Lint systemd/container units for stray positional tokens."],"tags":["kubernetes","kube-controller-manager","configuration","cli","validation"],"analyzedSha":"b882c60b4023bdf09264c2d5d30a2cadebc240fb","analyzedAt":"2026-08-07T04:07:48.144Z","schemaVersion":2},"datasetVersion":"2026-08-07T07:17:06.508Z"}