GoogleContainerTools/skaffold · error

CONFIG_PROFILES_NOT_FOUND_ERR

CONFIG_PROFILES_NOT_FOUND_ERR

Error message

profile selection %q did not match those defined in any configurations

What it means

ConfigProfilesNotMatchedErr is returned when profiles passed via the `--profile` flag do not match any profile defined in any loaded configuration. Code CONFIG_PROFILES_NOT_FOUND_ERR, suggesting checking profile selection.

Source

Thrown at pkg/skaffold/schema/errors/errors.go:160

		&proto.ActionableErr{
			Message: fmt.Sprintf("failed to set default values for config %q defined in file %q: %v", config, file, err),
			ErrCode: proto.StatusCode_CONFIG_DEFAULT_VALUES_ERR,
		})
}

// ConfigSetAbsFilePathsErr specifies that substituting absolute filepaths failed for this config
func ConfigSetAbsFilePathsErr(config, file string, err error) error {
	return sErrors.NewError(err,
		&proto.ActionableErr{
			Message: fmt.Sprintf("failed to set absolute filepaths for config %q defined in file %q: %v", config, file, err),
			ErrCode: proto.StatusCode_CONFIG_FILE_PATHS_SUBSTITUTION_ERR,
		})
}

// ConfigProfilesNotMatchedErr specifies that the profiles selected via the `--profile` flag could not be matched against any config
func ConfigProfilesNotMatchedErr(profiles []string) error {
	msg := fmt.Sprintf("profile selection %q did not match those defined in any configurations", profiles)
	return sErrors.NewError(errors.New(msg),
		&proto.ActionableErr{
			Message: msg,
			ErrCode: proto.StatusCode_CONFIG_PROFILES_NOT_FOUND_ERR,
			Suggestions: []*proto.Suggestion{
				{
					SuggestionCode: proto.SuggestionCode_CONFIG_CHECK_PROFILE_SELECTION,
					Action:         `Check that values specified in the "--profile" or "-p" flags are valid profile names`,
				},
			},
		})
}

// ConfigProfileConflictErr specifies that the same config is imported with different set of profiles.
func ConfigProfileConflictErr(config, file string) error {
	msg := fmt.Sprintf("config %q defined in file %q imported multiple times with different set of profiles", config, file)
	return sErrors.NewError(errors.New(msg),
		&proto.ActionableErr{
			Message: msg,

View on GitHub (pinned to a1189de023)

Solutions

  1. Verify each `--profile` value against the `profiles:` list in your skaffold.yaml.
  2. Remove profiles that no longer exist from the command, scripts, or CI pipeline.
  3. Add the missing profile definition if it is genuinely required.

Example fix

// before
skaffold dev --profile prod
// after (profile defined in skaffold.yaml as 'production')
skaffold dev --profile production
Defensive patterns

Strategy: validation

Validate before calling

for p in $(echo "$PROFILES" | tr ',' ' '); do
  grep -q "name: $p$" skaffold.yaml || { echo "profile '$p' not defined"; exit 1; }
done

Prevention

When it happens

Trigger: Running any command with `--profile name1,name2` where at least one requested name has no matching `profiles:` entry in skaffold.yaml (or imported configs).

Common situations: Typo in profile name; profile exists only in a different config file not being loaded; running the same command in another repo/branch where the profile was never defined or was renamed.

Related errors


AI-assisted analysis of GoogleContainerTools/skaffold@a1189de023 (2026-09-05). Data as JSON: /api/errors/c53ad6f1f3d0c3d3. Report an issue: GitHub.