{"record":{"id":"c16147e07ff09c3e","repo":"kubernetes/kops","slug":"can-only-create-one-instance-group-at-a-time","errorCode":null,"errorMessage":"can only create one instance group at a time","messagePattern":"can only create one instance group at a time","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cmd/kops/create_instancegroup.go","lineNumber":110,"sourceCode":"\t\tAliases: []string{\"instancegroups\", \"ig\"},\n\t\tShort:   createInstanceGroupShort,\n\t\tLong:    createInstanceGroupLong,\n\t\tExample: createInstanceGroupExample,\n\t\tArgs: func(cmd *cobra.Command, args []string) error {\n\t\t\toptions.ClusterName = rootCommand.ClusterName(true)\n\n\t\t\tif options.ClusterName == \"\" {\n\t\t\t\treturn fmt.Errorf(\"--name is required\")\n\t\t\t}\n\n\t\t\tif len(args) == 0 {\n\t\t\t\treturn fmt.Errorf(\"must specify name of instance group to create\")\n\t\t\t}\n\n\t\t\toptions.InstanceGroupName = args[0]\n\n\t\t\tif len(args) != 1 {\n\t\t\t\treturn fmt.Errorf(\"can only create one instance group at a time\")\n\t\t\t}\n\n\t\t\treturn nil\n\t\t},\n\t\tValidArgsFunction: func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {\n\t\t\tcommandutils.ConfigureKlogForCompletion()\n\t\t\tif len(args) == 1 && rootCommand.ClusterName(false) == \"\" {\n\t\t\t\treturn []string{\"--name\"}, cobra.ShellCompDirectiveNoFileComp\n\t\t\t}\n\t\t\treturn nil, cobra.ShellCompDirectiveNoFileComp\n\t\t},\n\t\tRunE: func(cmd *cobra.Command, args []string) error {\n\t\t\treturn RunCreateInstanceGroup(cmd.Context(), f, out, options)\n\t\t},\n\t}\n\n\tallRoles := make([]string, 0, len(kopsapi.AllInstanceGroupRoles))\n\tfor _, r := range kopsapi.AllInstanceGroupRoles {","sourceCodeStart":92,"sourceCodeEnd":128,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/cmd/kops/create_instancegroup.go#L92-L128","documentation":"Argument validation in `kops create instancegroup`: the command only supports creating a single instance group per invocation, so this guard fires when more than one positional argument is passed. Only args[0] is used as the group name; extra arguments are rejected instead of being silently ignored.","triggerScenarios":"Thrown at cmd/kops/create_instancegroup.go:110 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Pass only one instance group name per command invocation","Create additional instance groups with separate commands"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"4c8573c808a73d578c5eadc86d410646ea0b0d73","analyzedAt":"2026-09-05T04:13:19.212Z","contentChangedAt":"2026-09-05T04:13:19.212Z","schemaVersion":2},"datasetVersion":"2026-09-12T07:17:12.445Z"}