{"record":{"id":"54ff6f9a27befe39","repo":"kubernetes/kops","slug":"vmss-s-has-no-network-profile","errorCode":null,"errorMessage":"VMSS %s has no network profile","messagePattern":"VMSS (.+?) has no network profile","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/resources/azure/azure.go","lineNumber":463,"sourceCode":"\t// Add resources whose deletion is blocked by this VMSS.\n\tvar blocks []string\n\tblocks = append(blocks, toKey(typeResourceGroup, g.resourceGroupID()))\n\n\t// The VM Scale Set deletion is blocked by its instances.\n\tvar blocked []string\n\tfor _, vm := range vms {\n\t\tif vm == nil || vm.ID == nil {\n\t\t\tcontinue\n\t\t}\n\t\tblocked = append(blocked, toKey(typeVMScaleSetVM, *vm.ID))\n\t}\n\n\tvnets := set.New[string]()\n\tsubnets := set.New[string]()\n\tasgs := set.New[string]()\n\tlbs := set.New[string]()\n\tif vmss.Properties == nil || vmss.Properties.VirtualMachineProfile == nil || vmss.Properties.VirtualMachineProfile.NetworkProfile == nil {\n\t\treturn nil, fmt.Errorf(\"VMSS %s has no network profile\", fi.ValueOf(vmss.Name))\n\t}\n\tfor _, iface := range vmss.Properties.VirtualMachineProfile.NetworkProfile.NetworkInterfaceConfigurations {\n\t\tif iface.Properties == nil {\n\t\t\tcontinue\n\t\t}\n\t\tfor _, ip := range iface.Properties.IPConfigurations {\n\t\t\tif ip.Properties == nil || ip.Properties.Subnet == nil {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tsubnet, err := arm.ParseResourceID(*ip.Properties.Subnet.ID)\n\t\t\tif err != nil {\n\t\t\t\treturn nil, err\n\t\t\t}\n\t\t\tvnets.Insert(subnet.Parent.String())\n\t\t\tsubnets.Insert(subnet.String())\n\t\t\tif ip.Properties.ApplicationSecurityGroups != nil {\n\t\t\t\tfor _, asg := range ip.Properties.ApplicationSecurityGroups {\n\t\t\t\t\tasgs.Insert(*asg.ID)","sourceCodeStart":445,"sourceCodeEnd":481,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/pkg/resources/azure/azure.go#L445-L481","documentation":"Fires in toVMScaleSetResource when the VMSS's Properties, VirtualMachineProfile, or network profile chain is nil, so Azure resource discovery cannot extract vnets/subnets/ASGs/load balancers that the VMSS deletion blocks on.","triggerScenarios":"Thrown at pkg/resources/azure/azure.go:463 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Inspect the VMSS in the Azure portal/CLI — it may be mid-provisioning or partially deleted","Retry discovery once the VMSS has a complete network profile","If the VMSS is orphaned/broken, delete it directly in Azure and re-run kops delete"],"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"}