{"record":{"id":"712474f43b21ef41","repo":"kubernetes/kops","slug":"assigning-default-machine-type-for-control-plane-n","errorCode":null,"errorMessage":"assigning default machine type for control-plane nodes: %v","messagePattern":"assigning default machine type for control-plane nodes: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"upup/pkg/fi/cloudup/populate_instancegroup_spec.go","lineNumber":96,"sourceCode":"\n\tvar err error\n\t// TODO: Pass in `cloud` to shift validation to ValidateInstanceGroup\n\terr = validation.ValidateInstanceGroup(input, nil, false).ToAggregate()\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"failed validating input specs: %w\", err)\n\t}\n\n\tig := &kops.InstanceGroup{}\n\treflectutils.JSONMergeStruct(ig, input)\n\n\tigSpec := &ig.Spec\n\n\t// TODO: Clean up\n\tif ig.IsControlPlane() {\n\t\tif ig.Spec.MachineType == \"\" {\n\t\t\tig.Spec.MachineType, err = defaultMachineType(cloud, cluster, ig)\n\t\t\tif err != nil {\n\t\t\t\treturn nil, fmt.Errorf(\"assigning default machine type for control-plane nodes: %v\", err)\n\t\t\t}\n\n\t\t}\n\t\tif ig.Spec.MinSize == nil {\n\t\t\tig.Spec.MinSize = new(int32(1))\n\t\t}\n\t\tif ig.Spec.MaxSize == nil {\n\t\t\tig.Spec.MaxSize = new(int32(1))\n\t\t}\n\t} else if ig.Spec.Role.HasBastion() {\n\t\tif ig.Spec.MachineType == \"\" {\n\t\t\tig.Spec.MachineType, err = defaultMachineType(cloud, cluster, ig)\n\t\t\tif err != nil {\n\t\t\t\treturn nil, fmt.Errorf(\"error assigning default machine type for bastions: %v\", err)\n\t\t\t}\n\t\t}\n\t\tif ig.Spec.MinSize == nil {\n\t\t\tig.Spec.MinSize = new(int32(1))","sourceCodeStart":78,"sourceCodeEnd":114,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/upup/pkg/fi/cloudup/populate_instancegroup_spec.go#L78-L114","documentation":"The control-plane InstanceGroup has no machine type set, and resolving a default via the cloud provider (defaultMachineType) failed. The wrapped error typically means cloud access failed or no suitable default instance type could be determined for the cluster's zones.","triggerScenarios":"Thrown at upup/pkg/fi/cloudup/populate_instancegroup_spec.go:96 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set an explicit machineType on the control-plane instance group","Check cloud provider credentials and connectivity for the defaulting lookup","Ensure the cluster's zones have available instance types"],"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-12T12:17:11.808Z"}