{"record":{"id":"d8f108a7ba0c15d4","repo":"kubernetes/kops","slug":"detachinstance-is-not-implemented-yet-for-scaleway","errorCode":null,"errorMessage":"DetachInstance is not implemented yet for Scaleway","messagePattern":"DetachInstance is not implemented yet for Scaleway","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"upup/pkg/fi/cloudup/scaleway/cloud.go","lineNumber":301,"sourceCode":"\t\t\t\t\t_, err := s.lbAPI.RemoveBackendServers(&lb.ZonedAPIRemoveBackendServersRequest{\n\t\t\t\t\t\tZone:      s.zone,\n\t\t\t\t\t\tBackendID: backEnd.ID,\n\t\t\t\t\t\tServerIP:  []string{serverIP},\n\t\t\t\t\t})\n\t\t\t\t\tif err != nil {\n\t\t\t\t\t\treturn fmt.Errorf(\"deregistering cloud instance %s of group %q: removing IP from lb: %w\", i.ID, i.CloudInstanceGroup.HumanName, err)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn nil\n}\n\nfunc (s *scwCloudImplementation) DetachInstance(i *cloudinstances.CloudInstance) error {\n\tklog.V(8).Infof(\"Scaleway DetachInstance is not implemented yet\")\n\treturn fmt.Errorf(\"DetachInstance is not implemented yet for Scaleway\")\n}\n\n// FindClusterStatus was used before etcd-manager to check the etcd cluster status and prevent unsupported changes.\nfunc (s *scwCloudImplementation) FindClusterStatus(cluster *kops.Cluster) (*kops.ClusterStatus, error) {\n\tklog.V(8).Info(\"Scaleway FindClusterStatus is not implemented\")\n\treturn nil, nil\n}\n\n// FindVPCInfo is not implemented yet, it's only here to satisfy the fi.Cloud interface\nfunc (s *scwCloudImplementation) FindVPCInfo(id string) (*fi.VPCInfo, error) {\n\tklog.V(8).Info(\"Scaleway clusters don't have a VPC yet so FindVPCInfo is not implemented\")\n\treturn nil, fmt.Errorf(\"FindVPCInfo is not implemented yet for Scaleway\")\n}\n\nfunc (s *scwCloudImplementation) GetApiIngressStatus(cluster *kops.Cluster) ([]fi.ApiIngressStatus, error) {\n\tvar ingresses []fi.ApiIngressStatus\n\tname := \"api.\" + cluster.Name\n","sourceCodeStart":283,"sourceCodeEnd":319,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/upup/pkg/fi/cloudup/scaleway/cloud.go#L283-L319","documentation":"The Scaleway cloud implementation does not implement DetachInstance; this is a hard guard returning a fixed error whenever kops tries to detach an instance from a Scaleway server group. Scaleway support is incomplete for this operation.","triggerScenarios":"Thrown at upup/pkg/fi/cloudup/scaleway/cloud.go:301 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Avoid workflows that trigger instance detach on Scaleway","Track upstream kops Scaleway support for DetachInstance"],"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-12T12:17:11.808Z"}