sigs.k8s.io/cluster-api-provider-aws@v1.5.5/exp/api/v1alpha4/conversion.go (about) 1 /* 2 Copyright 2021 The Kubernetes Authors. 3 4 Licensed under the Apache License, Version 2.0 (the "License"); 5 you may not use this file except in compliance with the License. 6 You may obtain a copy of the License at 7 8 http://www.apache.org/licenses/LICENSE-2.0 9 10 Unless required by applicable law or agreed to in writing, software 11 distributed under the License is distributed on an "AS IS" BASIS, 12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 See the License for the specific language governing permissions and 14 limitations under the License. 15 */ 16 17 package v1alpha4 18 19 import ( 20 apiconversion "k8s.io/apimachinery/pkg/conversion" 21 infrav1alpha4 "sigs.k8s.io/cluster-api-provider-aws/api/v1alpha4" 22 infrav1 "sigs.k8s.io/cluster-api-provider-aws/api/v1beta1" 23 infrav1exp "sigs.k8s.io/cluster-api-provider-aws/exp/api/v1beta1" 24 utilconversion "sigs.k8s.io/cluster-api/util/conversion" 25 "sigs.k8s.io/controller-runtime/pkg/conversion" 26 ) 27 28 // ConvertTo converts the v1alpha4 AWSMachinePool receiver to a v1beta1 AWSMachinePool. 29 func (src *AWSMachinePool) ConvertTo(dstRaw conversion.Hub) error { 30 dst := dstRaw.(*infrav1exp.AWSMachinePool) 31 return Convert_v1alpha4_AWSMachinePool_To_v1beta1_AWSMachinePool(src, dst, nil) 32 } 33 34 // ConvertFrom converts the v1beta1 AWSMachinePool receiver to v1alpha4 AWSMachinePool. 35 func (r *AWSMachinePool) ConvertFrom(srcRaw conversion.Hub) error { 36 src := srcRaw.(*infrav1exp.AWSMachinePool) 37 38 return Convert_v1beta1_AWSMachinePool_To_v1alpha4_AWSMachinePool(src, r, nil) 39 } 40 41 // ConvertTo converts the v1alpha4 AWSMachinePoolList receiver to a v1beta1 AWSMachinePoolList. 42 func (src *AWSMachinePoolList) ConvertTo(dstRaw conversion.Hub) error { 43 dst := dstRaw.(*infrav1exp.AWSMachinePoolList) 44 return Convert_v1alpha4_AWSMachinePoolList_To_v1beta1_AWSMachinePoolList(src, dst, nil) 45 } 46 47 // ConvertFrom converts the v1beta1 AWSMachinePoolList receiver to v1alpha4 AWSMachinePoolList. 48 func (r *AWSMachinePoolList) ConvertFrom(srcRaw conversion.Hub) error { 49 src := srcRaw.(*infrav1exp.AWSMachinePoolList) 50 51 return Convert_v1beta1_AWSMachinePoolList_To_v1alpha4_AWSMachinePoolList(src, r, nil) 52 } 53 54 // ConvertTo converts the v1alpha4 AWSManagedMachinePool receiver to a v1beta1 AWSManagedMachinePool. 55 func (src *AWSManagedMachinePool) ConvertTo(dstRaw conversion.Hub) error { 56 dst := dstRaw.(*infrav1exp.AWSManagedMachinePool) 57 if err := Convert_v1alpha4_AWSManagedMachinePool_To_v1beta1_AWSManagedMachinePool(src, dst, nil); err != nil { 58 return err 59 } 60 61 restored := &infrav1exp.AWSManagedMachinePool{} 62 if ok, err := utilconversion.UnmarshalData(src, restored); err != nil || !ok { 63 return err 64 } 65 66 dst.Spec.RoleAdditionalPolicies = restored.Spec.RoleAdditionalPolicies 67 dst.Spec.UpdateConfig = restored.Spec.UpdateConfig 68 69 return nil 70 } 71 72 // ConvertFrom converts the v1beta1 AWSManagedMachinePool receiver to v1alpha4 AWSManagedMachinePool. 73 func (r *AWSManagedMachinePool) ConvertFrom(srcRaw conversion.Hub) error { 74 src := srcRaw.(*infrav1exp.AWSManagedMachinePool) 75 76 if err := Convert_v1beta1_AWSManagedMachinePool_To_v1alpha4_AWSManagedMachinePool(src, r, nil); err != nil { 77 return err 78 } 79 80 if err := utilconversion.MarshalData(src, r); err != nil { 81 return err 82 } 83 84 return nil 85 } 86 87 // Convert_v1beta1_AWSManagedMachinePoolSpec_To_v1alpha4_AWSManagedMachinePoolSpec is a conversion function. 88 func Convert_v1beta1_AWSManagedMachinePoolSpec_To_v1alpha4_AWSManagedMachinePoolSpec(in *infrav1exp.AWSManagedMachinePoolSpec, out *AWSManagedMachinePoolSpec, s apiconversion.Scope) error { 89 return autoConvert_v1beta1_AWSManagedMachinePoolSpec_To_v1alpha4_AWSManagedMachinePoolSpec(in, out, s) 90 } 91 92 // ConvertTo converts the v1alpha4 AWSManagedMachinePoolList receiver to a v1beta1 AWSManagedMachinePoolList. 93 func (src *AWSManagedMachinePoolList) ConvertTo(dstRaw conversion.Hub) error { 94 dst := dstRaw.(*infrav1exp.AWSManagedMachinePoolList) 95 return Convert_v1alpha4_AWSManagedMachinePoolList_To_v1beta1_AWSManagedMachinePoolList(src, dst, nil) 96 } 97 98 // ConvertFrom converts the v1beta1 AWSManagedMachinePoolList receiver to v1alpha4 AWSManagedMachinePoolList. 99 func (r *AWSManagedMachinePoolList) ConvertFrom(srcRaw conversion.Hub) error { 100 src := srcRaw.(*infrav1exp.AWSManagedMachinePoolList) 101 102 return Convert_v1beta1_AWSManagedMachinePoolList_To_v1alpha4_AWSManagedMachinePoolList(src, r, nil) 103 } 104 105 // ConvertTo converts the v1alpha4 AWSFargateProfile receiver to a v1beta1 AWSFargateProfile. 106 func (src *AWSFargateProfile) ConvertTo(dstRaw conversion.Hub) error { 107 dst := dstRaw.(*infrav1exp.AWSFargateProfile) 108 return Convert_v1alpha4_AWSFargateProfile_To_v1beta1_AWSFargateProfile(src, dst, nil) 109 } 110 111 // ConvertFrom converts the v1beta1 AWSFargateProfile receiver to v1alpha4 AWSFargateProfile. 112 func (r *AWSFargateProfile) ConvertFrom(srcRaw conversion.Hub) error { 113 src := srcRaw.(*infrav1exp.AWSFargateProfile) 114 115 return Convert_v1beta1_AWSFargateProfile_To_v1alpha4_AWSFargateProfile(src, r, nil) 116 } 117 118 // ConvertTo converts the v1alpha4 AWSFargateProfileList receiver to a v1beta1 AWSFargateProfileList. 119 func (src *AWSFargateProfileList) ConvertTo(dstRaw conversion.Hub) error { 120 dst := dstRaw.(*infrav1exp.AWSFargateProfileList) 121 return Convert_v1alpha4_AWSFargateProfileList_To_v1beta1_AWSFargateProfileList(src, dst, nil) 122 } 123 124 // ConvertFrom converts the v1beta1 AWSFargateProfileList receiver to v1alpha4 AWSFargateProfileList. 125 func (r *AWSFargateProfileList) ConvertFrom(srcRaw conversion.Hub) error { 126 src := srcRaw.(*infrav1exp.AWSFargateProfileList) 127 128 return Convert_v1beta1_AWSFargateProfileList_To_v1alpha4_AWSFargateProfileList(src, r, nil) 129 } 130 131 // Convert_v1alpha4_AMIReference_To_v1beta1_AMIReference converts the v1alpha4 AMIReference receiver to a v1beta1 AMIReference. 132 func Convert_v1alpha4_AMIReference_To_v1beta1_AMIReference(in *infrav1alpha4.AMIReference, out *infrav1.AMIReference, s apiconversion.Scope) error { 133 return infrav1alpha4.Convert_v1alpha4_AMIReference_To_v1beta1_AMIReference(in, out, s) 134 } 135 136 // Convert_v1beta1_AMIReference_To_v1alpha4_AMIReference converts the v1beta1 AMIReference receiver to a v1alpha4 AMIReference. 137 func Convert_v1beta1_AMIReference_To_v1alpha4_AMIReference(in *infrav1.AMIReference, out *infrav1alpha4.AMIReference, s apiconversion.Scope) error { 138 return infrav1alpha4.Convert_v1beta1_AMIReference_To_v1alpha4_AMIReference(in, out, s) 139 } 140 141 // Convert_v1beta1_Instance_To_v1alpha4_Instance is a conversion function. 142 func Convert_v1beta1_Instance_To_v1alpha4_Instance(in *infrav1.Instance, out *infrav1alpha4.Instance, s apiconversion.Scope) error { 143 return infrav1alpha4.Convert_v1beta1_Instance_To_v1alpha4_Instance(in, out, s) 144 } 145 146 // Convert_v1alpha4_Instance_To_v1beta1_Instance is a conversion function. 147 func Convert_v1alpha4_Instance_To_v1beta1_Instance(in *infrav1alpha4.Instance, out *infrav1.Instance, s apiconversion.Scope) error { 148 return infrav1alpha4.Convert_v1alpha4_Instance_To_v1beta1_Instance(in, out, s) 149 }