mirror of https://github.com/k3s-io/k3s
Cleanup borrowed conversion functions.
In pkg/apis/extensions/v1beta1/conversion.go, some conversion code was copied from the legacy api because Pod conversions cannot be automatically generated because of something about deprecatedServiceAccount. This PR fixes two problems due to that copying. First, the copied code could drift from its source To fix that, I replaced the Convert_api_ and Convert_v1 implementations with a call to the original function. I left a wrapper in case something needed to have a package-local function name. Second, the copied Convert_* functions, were copied, in a way that they refer to other conversion functions that aren't in the current package. This prevented genconverion from working from a clean start (no conversion_generated.go). Perhaps the person who wrote this in the first place had copied the conversion_generated.go file from legacy, so it worked. So, I added the v1 package name to calls to Convert_* functions. So, when someone Cargo-Cult copies the conversion.go file, like I did, they now will not have to wonder why genconversion complains about missing Convert_ functions. Deleted the conversion_generated.go and reran genconversion and it worked, no diffs old vs new conversion_generated.go.pull/6/head
parent
4ecfe4d207
commit
ff35d97663
|
@ -90,155 +90,11 @@ func addConversionFuncs(scheme *runtime.Scheme) {
|
||||||
// for the generated functions to work properly.
|
// for the generated functions to work properly.
|
||||||
// This should be fixed: https://github.com/kubernetes/kubernetes/issues/12977
|
// This should be fixed: https://github.com/kubernetes/kubernetes/issues/12977
|
||||||
func Convert_api_PodSpec_To_v1_PodSpec(in *api.PodSpec, out *v1.PodSpec, s conversion.Scope) error {
|
func Convert_api_PodSpec_To_v1_PodSpec(in *api.PodSpec, out *v1.PodSpec, s conversion.Scope) error {
|
||||||
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
|
return v1.Convert_api_PodSpec_To_v1_PodSpec(in, out, s)
|
||||||
defaulting.(func(*api.PodSpec))(in)
|
|
||||||
}
|
|
||||||
if in.Volumes != nil {
|
|
||||||
out.Volumes = make([]v1.Volume, len(in.Volumes))
|
|
||||||
for i := range in.Volumes {
|
|
||||||
if err := v1.Convert_api_Volume_To_v1_Volume(&in.Volumes[i], &out.Volumes[i], s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.Volumes = nil
|
|
||||||
}
|
|
||||||
if in.Containers != nil {
|
|
||||||
out.Containers = make([]v1.Container, len(in.Containers))
|
|
||||||
for i := range in.Containers {
|
|
||||||
if err := v1.Convert_api_Container_To_v1_Container(&in.Containers[i], &out.Containers[i], s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.Containers = nil
|
|
||||||
}
|
|
||||||
out.RestartPolicy = v1.RestartPolicy(in.RestartPolicy)
|
|
||||||
if in.TerminationGracePeriodSeconds != nil {
|
|
||||||
out.TerminationGracePeriodSeconds = new(int64)
|
|
||||||
*out.TerminationGracePeriodSeconds = *in.TerminationGracePeriodSeconds
|
|
||||||
} else {
|
|
||||||
out.TerminationGracePeriodSeconds = nil
|
|
||||||
}
|
|
||||||
if in.ActiveDeadlineSeconds != nil {
|
|
||||||
out.ActiveDeadlineSeconds = new(int64)
|
|
||||||
*out.ActiveDeadlineSeconds = *in.ActiveDeadlineSeconds
|
|
||||||
} else {
|
|
||||||
out.ActiveDeadlineSeconds = nil
|
|
||||||
}
|
|
||||||
out.DNSPolicy = v1.DNSPolicy(in.DNSPolicy)
|
|
||||||
if in.NodeSelector != nil {
|
|
||||||
out.NodeSelector = make(map[string]string)
|
|
||||||
for key, val := range in.NodeSelector {
|
|
||||||
out.NodeSelector[key] = val
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.NodeSelector = nil
|
|
||||||
}
|
|
||||||
out.ServiceAccountName = in.ServiceAccountName
|
|
||||||
// DeprecatedServiceAccount is an alias for ServiceAccountName.
|
|
||||||
out.DeprecatedServiceAccount = in.ServiceAccountName
|
|
||||||
out.NodeName = in.NodeName
|
|
||||||
if in.SecurityContext != nil {
|
|
||||||
out.SecurityContext = new(v1.PodSecurityContext)
|
|
||||||
if err := v1.Convert_api_PodSecurityContext_To_v1_PodSecurityContext(in.SecurityContext, out.SecurityContext, s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
out.HostNetwork = in.SecurityContext.HostNetwork
|
|
||||||
out.HostPID = in.SecurityContext.HostPID
|
|
||||||
out.HostIPC = in.SecurityContext.HostIPC
|
|
||||||
}
|
|
||||||
if in.ImagePullSecrets != nil {
|
|
||||||
out.ImagePullSecrets = make([]v1.LocalObjectReference, len(in.ImagePullSecrets))
|
|
||||||
for i := range in.ImagePullSecrets {
|
|
||||||
if err := v1.Convert_api_LocalObjectReference_To_v1_LocalObjectReference(&in.ImagePullSecrets[i], &out.ImagePullSecrets[i], s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.ImagePullSecrets = nil
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func Convert_v1_PodSpec_To_api_PodSpec(in *v1.PodSpec, out *api.PodSpec, s conversion.Scope) error {
|
func Convert_v1_PodSpec_To_api_PodSpec(in *v1.PodSpec, out *api.PodSpec, s conversion.Scope) error {
|
||||||
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
|
return v1.Convert_v1_PodSpec_To_api_PodSpec(in, out, s)
|
||||||
defaulting.(func(*v1.PodSpec))(in)
|
|
||||||
}
|
|
||||||
if in.Volumes != nil {
|
|
||||||
out.Volumes = make([]api.Volume, len(in.Volumes))
|
|
||||||
for i := range in.Volumes {
|
|
||||||
if err := v1.Convert_v1_Volume_To_api_Volume(&in.Volumes[i], &out.Volumes[i], s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.Volumes = nil
|
|
||||||
}
|
|
||||||
if in.Containers != nil {
|
|
||||||
out.Containers = make([]api.Container, len(in.Containers))
|
|
||||||
for i := range in.Containers {
|
|
||||||
if err := v1.Convert_v1_Container_To_api_Container(&in.Containers[i], &out.Containers[i], s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.Containers = nil
|
|
||||||
}
|
|
||||||
out.RestartPolicy = api.RestartPolicy(in.RestartPolicy)
|
|
||||||
if in.TerminationGracePeriodSeconds != nil {
|
|
||||||
out.TerminationGracePeriodSeconds = new(int64)
|
|
||||||
*out.TerminationGracePeriodSeconds = *in.TerminationGracePeriodSeconds
|
|
||||||
} else {
|
|
||||||
out.TerminationGracePeriodSeconds = nil
|
|
||||||
}
|
|
||||||
if in.ActiveDeadlineSeconds != nil {
|
|
||||||
out.ActiveDeadlineSeconds = new(int64)
|
|
||||||
*out.ActiveDeadlineSeconds = *in.ActiveDeadlineSeconds
|
|
||||||
} else {
|
|
||||||
out.ActiveDeadlineSeconds = nil
|
|
||||||
}
|
|
||||||
out.DNSPolicy = api.DNSPolicy(in.DNSPolicy)
|
|
||||||
if in.NodeSelector != nil {
|
|
||||||
out.NodeSelector = make(map[string]string)
|
|
||||||
for key, val := range in.NodeSelector {
|
|
||||||
out.NodeSelector[key] = val
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.NodeSelector = nil
|
|
||||||
}
|
|
||||||
// We support DeprecatedServiceAccount as an alias for ServiceAccountName.
|
|
||||||
// If both are specified, ServiceAccountName (the new field) wins.
|
|
||||||
out.ServiceAccountName = in.ServiceAccountName
|
|
||||||
if in.ServiceAccountName == "" {
|
|
||||||
out.ServiceAccountName = in.DeprecatedServiceAccount
|
|
||||||
}
|
|
||||||
out.NodeName = in.NodeName
|
|
||||||
|
|
||||||
if in.SecurityContext != nil {
|
|
||||||
out.SecurityContext = new(api.PodSecurityContext)
|
|
||||||
if err := v1.Convert_v1_PodSecurityContext_To_api_PodSecurityContext(in.SecurityContext, out.SecurityContext, s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if out.SecurityContext == nil {
|
|
||||||
out.SecurityContext = new(api.PodSecurityContext)
|
|
||||||
}
|
|
||||||
out.SecurityContext.HostNetwork = in.HostNetwork
|
|
||||||
out.SecurityContext.HostPID = in.HostPID
|
|
||||||
out.SecurityContext.HostIPC = in.HostIPC
|
|
||||||
if in.ImagePullSecrets != nil {
|
|
||||||
out.ImagePullSecrets = make([]api.LocalObjectReference, len(in.ImagePullSecrets))
|
|
||||||
for i := range in.ImagePullSecrets {
|
|
||||||
if err := v1.Convert_v1_LocalObjectReference_To_api_LocalObjectReference(&in.ImagePullSecrets[i], &out.ImagePullSecrets[i], s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.ImagePullSecrets = nil
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func Convert_extensions_DeploymentSpec_To_v1beta1_DeploymentSpec(in *extensions.DeploymentSpec, out *DeploymentSpec, s conversion.Scope) error {
|
func Convert_extensions_DeploymentSpec_To_v1beta1_DeploymentSpec(in *extensions.DeploymentSpec, out *DeploymentSpec, s conversion.Scope) error {
|
||||||
|
@ -381,76 +237,6 @@ func Convert_v1beta1_RollingUpdateDeployment_To_extensions_RollingUpdateDeployme
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func Convert_api_PodSecurityContext_To_v1_PodSecurityContext(in *api.PodSecurityContext, out *v1.PodSecurityContext, s conversion.Scope) error {
|
|
||||||
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
|
|
||||||
defaulting.(func(*api.PodSecurityContext))(in)
|
|
||||||
}
|
|
||||||
|
|
||||||
out.SupplementalGroups = in.SupplementalGroups
|
|
||||||
if in.SELinuxOptions != nil {
|
|
||||||
out.SELinuxOptions = new(v1.SELinuxOptions)
|
|
||||||
if err := v1.Convert_api_SELinuxOptions_To_v1_SELinuxOptions(in.SELinuxOptions, out.SELinuxOptions, s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.SELinuxOptions = nil
|
|
||||||
}
|
|
||||||
if in.RunAsUser != nil {
|
|
||||||
out.RunAsUser = new(int64)
|
|
||||||
*out.RunAsUser = *in.RunAsUser
|
|
||||||
} else {
|
|
||||||
out.RunAsUser = nil
|
|
||||||
}
|
|
||||||
if in.RunAsNonRoot != nil {
|
|
||||||
out.RunAsNonRoot = new(bool)
|
|
||||||
*out.RunAsNonRoot = *in.RunAsNonRoot
|
|
||||||
} else {
|
|
||||||
out.RunAsNonRoot = nil
|
|
||||||
}
|
|
||||||
if in.FSGroup != nil {
|
|
||||||
out.FSGroup = new(int64)
|
|
||||||
*out.FSGroup = *in.FSGroup
|
|
||||||
} else {
|
|
||||||
out.FSGroup = nil
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func Convert_v1_PodSecurityContext_To_api_PodSecurityContext(in *v1.PodSecurityContext, out *api.PodSecurityContext, s conversion.Scope) error {
|
|
||||||
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
|
|
||||||
defaulting.(func(*v1.PodSecurityContext))(in)
|
|
||||||
}
|
|
||||||
|
|
||||||
out.SupplementalGroups = in.SupplementalGroups
|
|
||||||
if in.SELinuxOptions != nil {
|
|
||||||
out.SELinuxOptions = new(api.SELinuxOptions)
|
|
||||||
if err := v1.Convert_v1_SELinuxOptions_To_api_SELinuxOptions(in.SELinuxOptions, out.SELinuxOptions, s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
out.SELinuxOptions = nil
|
|
||||||
}
|
|
||||||
if in.RunAsUser != nil {
|
|
||||||
out.RunAsUser = new(int64)
|
|
||||||
*out.RunAsUser = *in.RunAsUser
|
|
||||||
} else {
|
|
||||||
out.RunAsUser = nil
|
|
||||||
}
|
|
||||||
if in.RunAsNonRoot != nil {
|
|
||||||
out.RunAsNonRoot = new(bool)
|
|
||||||
*out.RunAsNonRoot = *in.RunAsNonRoot
|
|
||||||
} else {
|
|
||||||
out.RunAsNonRoot = nil
|
|
||||||
}
|
|
||||||
if in.FSGroup != nil {
|
|
||||||
out.FSGroup = new(int64)
|
|
||||||
*out.FSGroup = *in.FSGroup
|
|
||||||
} else {
|
|
||||||
out.FSGroup = nil
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func Convert_extensions_DaemonSetSpec_To_v1beta1_DaemonSetSpec(in *extensions.DaemonSetSpec, out *DaemonSetSpec, s conversion.Scope) error {
|
func Convert_extensions_DaemonSetSpec_To_v1beta1_DaemonSetSpec(in *extensions.DaemonSetSpec, out *DaemonSetSpec, s conversion.Scope) error {
|
||||||
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
|
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
|
||||||
defaulting.(func(*extensions.DaemonSetSpec))(in)
|
defaulting.(func(*extensions.DaemonSetSpec))(in)
|
||||||
|
|
Loading…
Reference in New Issue