kubernetes/kops · error

error reading operator manifest %q: %v

Error message

error reading operator manifest %q: %v

What it means

The VFS read of the operator manifest (packages/<name>/<version>/manifest.yaml resolved against the channel URL) failed — typically a 404 because that package version does not exist in the channel, or a network/permission error.

Source

Thrown at pkg/wellknownoperators/operators.go:99

	operatorVersion, _, err := unstructured.NestedString(u.Object, "spec", "version")
	if err != nil || operatorVersion == "" {
		return nil, fmt.Errorf("could not get spec.version from ClusterPackage")
	}

	id := operatorVersion

	location := path.Join("packages", operatorKey, operatorVersion, "manifest.yaml")
	channelURL, err := kops.ResolveChannel(b.Cluster.Spec.Channel)
	if err != nil {
		return nil, fmt.Errorf("error resolving channel %q: %v", b.Cluster.Spec.Channel, err)
	}

	locationURL := channelURL.ResolveReference(&url.URL{Path: location}).String()

	manifestBytes, err := b.VFSContext.ReadFile(locationURL)
	if err != nil {
		return nil, fmt.Errorf("error reading operator manifest %q: %v", locationURL, err)
	}

	addon := &Package{
		Manifest: manifestBytes,
		Spec: channelsapi.AddonSpec{
			Name:     new(operatorKey),
			Id:       id,
			Selector: map[string]string{"k8s-addon": operatorKey},
			Manifest: new(location),
		},
	}
	return addon, nil
}

func CreateAddons(channel *kops.Channel, kubernetesVersion *semver.Version, cluster *kops.Cluster) (kubemanifest.ObjectList, error) {
	var addons kubemanifest.ObjectList

	if !featureflag.UseAddonOperators.Enabled() {

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Verify the package name and spec.version actually exist in the configured channel
  2. Update the channel or the ClusterPackage version to one that is published
  3. Check network access and credentials for the channel/package location
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at pkg/wellknownoperators/operators.go:99 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/84131482213588f3. Report an issue: GitHub.