The issue in your case is that you mistakenly use status.succeeded
instead of status.successful
, so right command is
kubectl delete jobs.batch --field-selector status.successful==1
No resources found
Regarding your question about all the fields: my suggestion is to deep into the code and search for proper resources types in conversion.go for each API.
Example:
Batch Jobs conversion.go
return scheme.AddFieldLabelConversionFunc(SchemeGroupVersion.WithKind("Job"),
func(label, value string) (string, string, error) {
switch label {
case "metadata.name", "metadata.namespace", "status.successful":
return label, value, nil
default:
return "", "", fmt.Errorf("field label %q not supported for batchv1.Job", label)
}
},
)
}