kubernetes/kops · error

failed to get info for server %q: %w

Error message

failed to get info for server %q: %w

What it means

The Hetzner Cloud API call (Server.GetByID) failed or the server record lacks usable data while resolving the node's backing server. The %w detail carries the API error; authentication, network, or a deleted server are typical causes.

Source

Thrown at pkg/nodeidentity/hetzner/identify.go:149

	return info, nil
}

// stringKeyFunc is a string as cache key function
func stringKeyFunc(obj interface{}) (string, error) {
	key := obj.(*nodeidentity.Info).InstanceID
	return key, nil
}

// getServer queries Hetzner Cloud for the server with the specified ID, returning an error if not found
func (i *nodeIdentifier) getServer(id string) (*hcloud.Server, error) {
	serverID, err := strconv.ParseInt(id, 10, 64)
	if err != nil {
		return nil, fmt.Errorf("failed to convert server ID %q to int: %w", id, err)
	}
	server, _, err := i.client.Server.GetByID(context.TODO(), serverID)
	if err != nil || server == nil {
		return nil, fmt.Errorf("failed to get info for server %q: %w", id, err)
	}

	return server, nil
}

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Check the wrapped API error (auth token, rate limits, connectivity)
  2. Verify the server ID still exists in the Hetzner project
  3. Delete the stale Node object if the server was deleted
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at pkg/nodeidentity/hetzner/identify.go:149 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05). Data as JSON: /api/errors/cce3aaa84f4b6d96. Report an issue: GitHub.