kubernetes/kops · error

%s

Error message

%s

What it means

In edit-cluster's non-interactive --set/--unset path, updateCluster returned a non-empty failure string (validation messages produced while applying the edited cluster, e.g. from tasks). This guard simply converts that failure text into an error.

Source

Thrown at cmd/kops/edit_cluster.go:137

	if err != nil {
		return err
	}

	if len(options.Unsets)+len(options.Sets) > 0 {
		newCluster := oldCluster.DeepCopy()
		if err := commands.UnsetClusterFields(options.Unsets, newCluster); err != nil {
			return err
		}
		if err := commands.SetClusterFields(options.Sets, newCluster); err != nil {
			return err
		}

		failure, err := updateCluster(ctx, clientset, oldCluster, newCluster, instanceGroups)
		if err != nil {
			return err
		}
		if failure != "" {
			return fmt.Errorf("%s", failure)
		}
		return nil
	}

	editor := util_editor.NewDefaultEditor(commandutils.EditorEnvs)

	ext := "yaml"
	raw, err := kopscodecs.ToVersionedYaml(oldCluster)
	if err != nil {
		return err
	}

	var (
		results = editResults{}
		edited  = []byte{}
		file    string
	)

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Read the failure message text for the specific validation problem
  2. Fix the --set/--unset expressions accordingly
  3. Use the interactive editor path to see fuller feedback
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at cmd/kops/edit_cluster.go:137 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/ef466322f61b4346. Report an issue: GitHub.