{"record":{"id":"2ab3f28dabfae7d6","repo":"kubernetes/kops","slug":"method-metal-cloud-findvpcinfo-not-implemented","errorCode":null,"errorMessage":"method metal.Cloud::FindVPCInfo not implemented","messagePattern":"method metal\\.Cloud::FindVPCInfo not implemented","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"upup/pkg/fi/cloudup/metal/cloud.go","lineNumber":52,"sourceCode":"type Cloud struct {\n}\n\n// NewCloud returns a Cloud for metal resources.\nfunc NewCloud() (*Cloud, error) {\n\tcloud := &Cloud{}\n\treturn cloud, nil\n}\n\nfunc (c *Cloud) ProviderID() kops.CloudProviderID {\n\treturn kops.CloudProviderMetal\n}\nfunc (c *Cloud) DNS() (dnsprovider.Interface, error) {\n\treturn nil, fmt.Errorf(\"method metal.Cloud::DNS not implemented\")\n}\n\n// FindVPCInfo looks up the specified VPC by id, returning info if found, otherwise (nil, nil).\nfunc (c *Cloud) FindVPCInfo(id string) (*fi.VPCInfo, error) {\n\treturn nil, fmt.Errorf(\"method metal.Cloud::FindVPCInfo not implemented\")\n}\n\n// DeleteInstance deletes a cloud instance.\nfunc (c *Cloud) DeleteInstance(instance *cloudinstances.CloudInstance) error {\n\treturn fmt.Errorf(\"method metal.Cloud::DeleteInstance not implemented\")\n}\n\n// // DeregisterInstance drains a cloud instance and loadbalancers.\nfunc (c *Cloud) DeregisterInstance(instance *cloudinstances.CloudInstance) error {\n\treturn fmt.Errorf(\"method metal.Cloud::DeregisterInstance not implemented\")\n}\n\n// DeleteGroup deletes the cloud resources that make up a CloudInstanceGroup, including the instances.\nfunc (c *Cloud) DeleteGroup(group *cloudinstances.CloudInstanceGroup) error {\n\treturn fmt.Errorf(\"method metal.Cloud::DeleteGroup not implemented\")\n}\n\n// DetachInstance causes a cloud instance to no longer be counted against the group's size limits.","sourceCodeStart":34,"sourceCodeEnd":70,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/upup/pkg/fi/cloudup/metal/cloud.go#L34-L70","documentation":"Stub-method error: metal.Cloud.FindVPCInfo is unimplemented because bare metal has no cloud VPC concept. Fires when cluster networking code queries VPC details from the metal provider — a capability gap, not a runtime failure.","triggerScenarios":"Thrown at upup/pkg/fi/cloudup/metal/cloud.go:52 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Do not use VPC-dependent features with the metal provider","Supply networking configuration explicitly in the cluster spec","Implement FindVPCInfo if metal later supports networks"],"exampleFix":null,"handlingStrategy":"fallback","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"}