kubernetes/kops · error

hetzner cloud provider does not implement FindVPCInfo at thi

Error message

hetzner cloud provider does not implement FindVPCInfo at this time

What it means

FindVPCInfo on the Hetzner cloud implementation is a stub: it unconditionally returns an error because VPC/network discovery has not been implemented for Hetzner. Any code path that asks the Hetzner cloud for VPC info will always fail here regardless of input.

Source

Thrown at upup/pkg/fi/cloudup/hetzner/cloud.go:427

		err = deleteServer(c, serverID)
		if err != nil {
			return err
		}
	}

	return nil
}

func (c *hetznerCloudImplementation) DeregisterInstance(i *cloudinstances.CloudInstance) error {
	// Hetzner Cloud API doesn't provide the option to drain and remove an instance from the associated load balancers
	return nil
}

// FindVPCInfo is not implemented
func (c *hetznerCloudImplementation) FindVPCInfo(id string) (*fi.VPCInfo, error) {
	// TODO(hakman): Implement me
	return nil, errors.New("hetzner cloud provider does not implement FindVPCInfo at this time")
}

// FindClusterStatus was used before etcd-manager to check the etcd cluster status and prevent unsupported changes.
func (c *hetznerCloudImplementation) FindClusterStatus(cluster *kops.Cluster) (*kops.ClusterStatus, error) {
	return nil, nil
}

func (c *hetznerCloudImplementation) GetApiIngressStatus(cluster *kops.Cluster) ([]fi.ApiIngressStatus, error) {
	lbName := "api." + cluster.Name

	client := c.LoadBalancerClient()
	lb, _, err := client.GetByName(context.TODO(), lbName)
	if err != nil {
		return nil, fmt.Errorf("failed to get info for load balancer %q: %w", lbName, err)
	}
	if lb == nil {
		return nil, nil
	}

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Avoid kops operations that require VPC discovery on Hetzner clusters
  2. Contribute an implementation of FindVPCInfo for the Hetzner provider
  3. Supply network configuration explicitly so VPC lookup is not needed
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at upup/pkg/fi/cloudup/hetzner/cloud.go:427 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/89e9df2ea1c8c04c. Report an issue: GitHub.