{"record":{"id":"e16817eb954766cf","repo":"kubernetes/kops","slug":"instance-ip-address-has-not-yet-been-created","errorCode":null,"errorMessage":"instance IP address has not yet been created","messagePattern":"instance IP address has not yet been created","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"upup/pkg/fi/cloudup/gcetasks/instance.go","lineNumber":244,"sourceCode":"\t\t}\n\t}\n\n\tvar networkInterfaces []*compute.NetworkInterface\n\t{\n\t\tnetworkInterface := &compute.NetworkInterface{\n\t\t\tAccessConfigs: []*compute.AccessConfig{{\n\t\t\t\tType: \"ONE_TO_ONE_NAT\",\n\t\t\t}},\n\t\t\tNetwork: e.Network.URL(project),\n\t\t}\n\n\t\tif e.IPAddress != nil {\n\t\t\taddr, err := ipAddressResolver(e.IPAddress)\n\t\t\tif err != nil {\n\t\t\t\treturn nil, fmt.Errorf(\"unable to resolve IP for instance: %v\", err)\n\t\t\t}\n\t\t\tif addr == nil {\n\t\t\t\treturn nil, fmt.Errorf(\"instance IP address has not yet been created\")\n\t\t\t}\n\t\t\tnetworkInterface.AccessConfigs[0].NatIP = *addr\n\t\t}\n\t\tif e.Subnet != nil {\n\t\t\tnetworkInterface.Subnetwork = *e.Subnet.Name\n\t\t}\n\t\tif e.StackType != nil {\n\t\t\tnetworkInterface.StackType = *e.StackType\n\t\t}\n\t\tnetworkInterfaces = append(networkInterfaces, networkInterface)\n\t}\n\n\tvar serviceAccounts []*compute.ServiceAccount\n\tif e.ServiceAccount != nil {\n\t\tif e.Scopes != nil {\n\t\t\tvar scopes []string\n\t\t\tfor _, s := range e.Scopes {\n\t\t\t\ts = scopeToLongForm(s)","sourceCodeStart":226,"sourceCodeEnd":262,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/upup/pkg/fi/cloudup/gcetasks/instance.go#L226-L262","documentation":"Returned in Instance.mapToGCE when the instance spec references an Address task (e.IPAddress != nil) but the resolver returns a nil IP — i.e. the Address object exists in the model yet its IPAddress field is unset because the address has not been allocated yet. It indicates a task-dependency/ordering problem, not a GCE API failure.","triggerScenarios":"Thrown at upup/pkg/fi/cloudup/gcetasks/instance.go:244 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Ensure the Address task the instance depends on is created (has an IP) before the instance renders — add/verify the task dependency (e.AddDependency) so Address renders first","Run with an explicit static address that is pre-allocated if ordering cannot be guaranteed","Re-run the apply: the address may have been created on a prior partially-successful run"],"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"}