istio/istio · error

validatePortNumberString(%s) bad type %T, want string

Error message

validatePortNumberString(%s) bad type %T, want string

What it means

Error "validatePortNumberString(%s) bad type %T, want string" thrown in istio/istio.

Source

Thrown at operator/pkg/apis/validation/validation.go:477

// validateStringList returns a validator function that works on a string list, using the supplied validatorFunc vf on
// each element.
func validateStringList(vf validatorFunc) validatorFunc {
	return func(path util.Path, val any) util.Errors {
		if !util.IsString(val) {
			return util.NewErrs(fmt.Errorf("validateStringList %s got %T, want string", path, val))
		}
		var errs util.Errors
		for _, s := range strings.Split(val.(string), ",") {
			errs = util.AppendErrs(errs, vf(path, s))
		}
		return errs
	}
}

// validatePortNumberString checks if val is a string with a valid port number.
func validatePortNumberString(path util.Path, val any) util.Errors {
	if !util.IsString(val) {
		return util.NewErrs(fmt.Errorf("validatePortNumberString(%s) bad type %T, want string", path, val))
	}
	if val.(string) == "*" || val.(string) == "" {
		return nil
	}
	intV, err := strconv.ParseInt(val.(string), 10, 32)
	if err != nil {
		return util.NewErrs(fmt.Errorf("%s : %s", path, err))
	}
	return validatePortNumber(path, intV)
}

// validatePortNumber checks whether val is an integer representing a valid port number.
func validatePortNumber(path util.Path, val any) util.Errors {
	return validateIntRange(path, val, 0, 65535)
}

// validateIPRangesOrStar validates IP ranges and also allow star, examples: "1.1.0.256/16,2.2.0.257/16", "*"
func validateIPRangesOrStar(path util.Path, val any) (errs util.Errors) {

View on GitHub (pinned to 8dc789c5cf)

When it happens

Trigger: Thrown at operator/pkg/apis/validation/validation.go:477 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of istio/istio@8dc789c5cf (2026-08-15). Data as JSON: /api/errors/a62382d7f78403a7. Report an issue: GitHub.