kubernetes/kops · error

failed to extract images: %v

Error message

failed to extract images: %v

What it means

getImage wraps the images.ExtractImages failure after fetching pages, i.e. the Glance response could not be parsed into Image objects. It fires on malformed API responses, aborting image resolution before the name-match switch.

Source

Thrown at upup/pkg/fi/cloudup/openstack/image.go:40

	"github.com/gophercloud/gophercloud/v2/openstack/image/v2/images"
)

func (c *openstackCloud) GetImage(name string) (*images.Image, error) {
	return getImage(c, name)
}

func getImage(c OpenstackCloud, name string) (*images.Image, error) {
	opts := images.ListOpts{Name: name}
	pager := images.List(c.ImageClient(), opts)
	page, err := pager.AllPages(context.TODO())
	if err != nil {
		return nil, fmt.Errorf("failed to list images: %v", err)
	}

	i, err := images.ExtractImages(page)
	if err != nil {
		return nil, fmt.Errorf("failed to extract images: %v", err)
	}

	switch len(i) {
	case 1:
		return &i[0], nil
	case 0:
		return nil, fmt.Errorf("no image found with name %v", name)
	default:
		return nil, fmt.Errorf("multiple images found with name %v", name)
	}
}

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Retry the image lookup; likely a transient or API-response issue
  2. Check gophercloud/Glance version compatibility
  3. Inspect the wrapped error for response-format anomalies
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at upup/pkg/fi/cloudup/openstack/image.go:40 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/718c98ed1a8deaa2. Report an issue: GitHub.