diff --git a/pkg/apis/certificates/v1alpha1/conversion.go b/pkg/apis/certificates/v1alpha1/conversion.go index ba2f3c37235..5275811b889 100644 --- a/pkg/apis/certificates/v1alpha1/conversion.go +++ b/pkg/apis/certificates/v1alpha1/conversion.go @@ -16,9 +16,24 @@ limitations under the License. package v1alpha1 -import "k8s.io/kubernetes/pkg/runtime" +import ( + "fmt" + + "k8s.io/kubernetes/pkg/api" + "k8s.io/kubernetes/pkg/runtime" +) func addConversionFuncs(scheme *runtime.Scheme) error { // Add non-generated conversion functions here. Currently there are none. - return nil + + return api.Scheme.AddFieldLabelConversionFunc(SchemeGroupVersion.String(), "CertificateSigningRequest", + func(label, value string) (string, string, error) { + switch label { + case "metadata.name": + return label, value, nil + default: + return "", "", fmt.Errorf("field label not supported: %s", label) + } + }, + ) } diff --git a/pkg/registry/certificates/strategy.go b/pkg/registry/certificates/strategy.go index 3928a4131b0..e5a630c9b8e 100644 --- a/pkg/registry/certificates/strategy.go +++ b/pkg/registry/certificates/strategy.go @@ -184,5 +184,5 @@ func Matcher(label labels.Selector, field fields.Selector) *generic.SelectionPre // SelectableFields returns a field set that can be used for filter selection func SelectableFields(obj *certificates.CertificateSigningRequest) fields.Set { - return nil + return generic.ObjectMetaFieldsSet(obj.ObjectMeta, false) }