kubernetes/kops · error

error listing networks: %v

Error message

error listing networks: %v

What it means

The Neutron network list call failed while fetching all pages. Reads use retry-with-backoff, so this error indicates a persistent API failure such as credentials, endpoint, or service health.

Source

Thrown at upup/pkg/fi/cloudup/openstack/network.go:135

		return network, err
	} else if done {
		return network, nil
	} else {
		return network, wait.ErrWaitTimeout
	}
}

func (c *openstackCloud) ListNetworks(opt networks.ListOptsBuilder) ([]networks.Network, error) {
	return listNetworks(c, opt)
}

func listNetworks(c OpenstackCloud, opt networks.ListOptsBuilder) ([]networks.Network, error) {
	var ns []networks.Network

	done, err := vfs.RetryWithBackoff(readBackoff, func() (bool, error) {
		allPages, err := networks.List(c.NetworkingClient(), opt).AllPages(context.TODO())
		if err != nil {
			return false, fmt.Errorf("error listing networks: %v", err)
		}

		r, err := networks.ExtractNetworks(allPages)
		if err != nil {
			return false, fmt.Errorf("error extracting networks from pages: %v", err)
		}
		ns = r
		return true, nil
	})
	if err != nil {
		return ns, err
	} else if done {
		return ns, nil
	} else {
		return ns, wait.ErrWaitTimeout
	}
}

View on GitHub (pinned to 4c8573c808)

Example fix

// before
opt := networks.ListOpts{"bad_field": "x"}
// after
opt := networks.ListOpts{Name: "my-network"}
Defensive patterns

Strategy: retry

Validate before calling

// use only documented Neutron list filters
opt := networks.ListOpts{Name: expectedName} // avoid non-standard fields

Try / catch

ns, err := listNetworks(c, opt)
if err != nil {
    var gerr gophercloud.ErrUnexpectedResponseCode
    if errors.As(err, &gerr) && gerr.Actual == 400 {
        return nil, fmt.Errorf("invalid ListOpts for this Neutron version: %w", err)
    }
    return nil, err
}

Prevention

When it happens

Trigger: networks.List(...).AllPages fails: bad ListOpts filter causing API 400, auth failure, or Neutron endpoint error/timeout during pagination.

Common situations: Invalid or unsupported filter fields in networks.ListOpts for the deployed Neutron version; token expiry mid-listing; Neutron service outage.

Related errors


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