// This will Convert the v1 representation of VolumeSource to our internal representation // Used for keeping backwards compatibility for the Metadata field func Convert_v1_VolumeSource_To_api_VolumeSource(in *VolumeSource, out *api.VolumeSource, s conversion.Scope) error { if err := autoConvert_v1_VolumeSource_To_api_VolumeSource(in, out, s); err != nil { return err } // Metadata overrides DownwardAPI if in.Metadata != nil { out.DownwardAPI = &api.DownwardAPIVolumeSource{} for _, item := range in.Metadata.Items { file := api.DownwardAPIVolumeFile{Path: item.Path} if item.FieldRef != nil { file.FieldRef = new(api.ObjectFieldSelector) if err := Convert_v1_ObjectFieldSelector_To_api_ObjectFieldSelector(item.FieldRef, file.FieldRef, s); err != nil { return err } } if item.ResourceFieldRef != nil { file.ResourceFieldRef = new(api.ResourceFieldSelector) if err := Convert_v1_ResourceFieldSelector_To_api_ResourceFieldSelector(item.ResourceFieldRef, file.ResourceFieldRef, s); err != nil { return err } } out.DownwardAPI.Items = append(out.DownwardAPI.Items, file) } } return nil }