Skip to content

Commit 248a75f

Browse files
committed
Stop relying on default conversions for metav1beta1
1 parent 4c81edb commit 248a75f

File tree

3 files changed

+43
-4
lines changed

3 files changed

+43
-4
lines changed

staging/src/k8s.io/apimachinery/pkg/apis/meta/internalversion/register.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,9 @@ func addToGroupVersion(scheme *runtime.Scheme) error {
7676
&metav1.UpdateOptions{})
7777

7878
metav1.AddToGroupVersion(scheme, metav1.SchemeGroupVersion)
79+
if err := metav1beta1.RegisterConversions(scheme); err != nil {
80+
return err
81+
}
7982
return nil
8083
}
8184

staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1/conversion.go

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,31 @@ limitations under the License.
1616

1717
package v1beta1
1818

19-
import "k8s.io/apimachinery/pkg/conversion"
19+
import (
20+
"unsafe"
21+
22+
"k8s.io/apimachinery/pkg/apis/meta/v1"
23+
"k8s.io/apimachinery/pkg/conversion"
24+
)
2025

2126
// Convert_Slice_string_To_v1beta1_IncludeObjectPolicy allows converting a URL query parameter value
22-
func Convert_Slice_string_To_v1beta1_IncludeObjectPolicy(input *[]string, out *IncludeObjectPolicy, s conversion.Scope) error {
23-
if len(*input) > 0 {
24-
*out = IncludeObjectPolicy((*input)[0])
27+
func Convert_Slice_string_To_v1beta1_IncludeObjectPolicy(in *[]string, out *IncludeObjectPolicy, s conversion.Scope) error {
28+
if len(*in) > 0 {
29+
*out = IncludeObjectPolicy((*in)[0])
2530
}
2631
return nil
2732
}
33+
34+
// Convert_v1beta1_PartialObjectMetadataList_To_v1_PartialObjectMetadataList allows converting PartialObjectMetadataList between versions
35+
func Convert_v1beta1_PartialObjectMetadataList_To_v1_PartialObjectMetadataList(in *PartialObjectMetadataList, out *v1.PartialObjectMetadataList, s conversion.Scope) error {
36+
out.ListMeta = in.ListMeta
37+
out.Items = *(*[]v1.PartialObjectMetadata)(unsafe.Pointer(&in.Items))
38+
return nil
39+
}
40+
41+
// Convert_v1_PartialObjectMetadataList_To_v1beta1_PartialObjectMetadataList allows converting PartialObjectMetadataList between versions
42+
func Convert_v1_PartialObjectMetadataList_To_v1beta1_PartialObjectMetadataList(in *v1.PartialObjectMetadataList, out *PartialObjectMetadataList, s conversion.Scope) error {
43+
out.ListMeta = in.ListMeta
44+
out.Items = *(*[]v1.PartialObjectMetadata)(unsafe.Pointer(&in.Items))
45+
return nil
46+
}

staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1/register.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ limitations under the License.
1717
package v1beta1
1818

1919
import (
20+
"k8s.io/apimachinery/pkg/apis/meta/v1"
21+
"k8s.io/apimachinery/pkg/conversion"
2022
"k8s.io/apimachinery/pkg/runtime"
2123
"k8s.io/apimachinery/pkg/runtime/schema"
2224
)
@@ -43,3 +45,18 @@ func AddMetaToScheme(scheme *runtime.Scheme) error {
4345

4446
return nil
4547
}
48+
49+
// RegisterConversions adds conversion functions to the given scheme.
50+
func RegisterConversions(s *runtime.Scheme) error {
51+
if err := s.AddGeneratedConversionFunc((*PartialObjectMetadataList)(nil), (*v1.PartialObjectMetadataList)(nil), func(a, b interface{}, scope conversion.Scope) error {
52+
return Convert_v1beta1_PartialObjectMetadataList_To_v1_PartialObjectMetadataList(a.(*PartialObjectMetadataList), b.(*v1.PartialObjectMetadataList), scope)
53+
}); err != nil {
54+
return err
55+
}
56+
if err := s.AddGeneratedConversionFunc((*v1.PartialObjectMetadataList)(nil), (*PartialObjectMetadataList)(nil), func(a, b interface{}, scope conversion.Scope) error {
57+
return Convert_v1_PartialObjectMetadataList_To_v1beta1_PartialObjectMetadataList(a.(*v1.PartialObjectMetadataList), b.(*PartialObjectMetadataList), scope)
58+
}); err != nil {
59+
return err
60+
}
61+
return nil
62+
}

0 commit comments

Comments
 (0)