本文整理匯總了Golang中k8s/io/kubernetes/pkg/conversion.Scope.Convert方法的典型用法代碼示例。如果您正苦於以下問題:Golang Scope.Convert方法的具體用法?Golang Scope.Convert怎麽用?Golang Scope.Convert使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類k8s/io/kubernetes/pkg/conversion.Scope
的用法示例。
在下文中一共展示了Scope.Convert方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: autoConvert_api_Image_To_v1_Image
func autoConvert_api_Image_To_v1_Image(in *api.Image, out *Image, s conversion.Scope) error {
if err := api_v1.Convert_api_ObjectMeta_To_v1_ObjectMeta(&in.ObjectMeta, &out.ObjectMeta, s); err != nil {
return err
}
out.DockerImageReference = in.DockerImageReference
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&in.DockerImageMetadata, &out.DockerImageMetadata, 0); err != nil {
return err
}
out.DockerImageMetadataVersion = in.DockerImageMetadataVersion
out.DockerImageManifest = in.DockerImageManifest
out.DockerImageLayers = *(*[]ImageLayer)(unsafe.Pointer(&in.DockerImageLayers))
if in.Signatures != nil {
in, out := &in.Signatures, &out.Signatures
*out = make([]ImageSignature, len(*in))
for i := range *in {
if err := Convert_api_ImageSignature_To_v1_ImageSignature(&(*in)[i], &(*out)[i], s); err != nil {
return err
}
}
} else {
out.Signatures = nil
}
out.DockerImageSignatures = *(*[][]byte)(unsafe.Pointer(&in.DockerImageSignatures))
out.DockerImageManifestMediaType = in.DockerImageManifestMediaType
out.DockerImageConfig = in.DockerImageConfig
return nil
}
示例2: autoconvert_v1alpha1_KubeProxyConfiguration_To_componentconfig_KubeProxyConfiguration
func autoconvert_v1alpha1_KubeProxyConfiguration_To_componentconfig_KubeProxyConfiguration(in *KubeProxyConfiguration, out *componentconfig.KubeProxyConfiguration, s conversion.Scope) error {
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
defaulting.(func(*KubeProxyConfiguration))(in)
}
if err := s.Convert(&in.TypeMeta, &out.TypeMeta, 0); err != nil {
return err
}
out.BindAddress = in.BindAddress
out.CleanupIPTables = in.CleanupIPTables
out.HealthzBindAddress = in.HealthzBindAddress
out.HealthzPort = in.HealthzPort
out.HostnameOverride = in.HostnameOverride
out.IPTablesSyncePeriodSeconds = in.IPTablesSyncePeriodSeconds
out.KubeAPIBurst = in.KubeAPIBurst
out.KubeAPIQPS = in.KubeAPIQPS
out.KubeconfigPath = in.KubeconfigPath
out.MasqueradeAll = in.MasqueradeAll
out.Master = in.Master
if in.OOMScoreAdj != nil {
out.OOMScoreAdj = new(int)
*out.OOMScoreAdj = *in.OOMScoreAdj
} else {
out.OOMScoreAdj = nil
}
out.Mode = componentconfig.ProxyMode(in.Mode)
out.PortRange = in.PortRange
out.ResourceContainer = in.ResourceContainer
out.UDPTimeoutMilliseconds = in.UDPTimeoutMilliseconds
return nil
}
示例3: Convert_api_Template_To_v1beta3_Template
func Convert_api_Template_To_v1beta3_Template(in *newer.Template, out *Template, s conversion.Scope) error {
//FIXME: DefaultConvert should not overwrite the Labels field on the
// the base object. This is likely a bug in the DefaultConvert
// code. For now, it is called before converting the labels.
if err := s.DefaultConvert(in, out, conversion.IgnoreMissingFields); err != nil {
return err
}
if err := s.Convert(&in.ObjectLabels, &out.Labels, 0); err != nil {
return err
}
// if we have runtime.Unstructured objects from the Process call. We need to encode those
// objects using the unstructured codec BEFORE the REST layers gets its shot at encoding to avoid a layered
// encode being done.
for i := range in.Objects {
if unstructured, ok := in.Objects[i].(*runtime.Unstructured); ok {
bytes, err := runtime.Encode(runtime.UnstructuredJSONScheme, unstructured)
if err != nil {
return err
}
out.Objects[i] = runtime.RawExtension{Raw: bytes}
}
}
return nil
}
示例4: convert_v1_DeploymentTriggerImageChangeParams_To_api_DeploymentTriggerImageChangeParams
func convert_v1_DeploymentTriggerImageChangeParams_To_api_DeploymentTriggerImageChangeParams(in *DeploymentTriggerImageChangeParams, out *newer.DeploymentTriggerImageChangeParams, s conversion.Scope) error {
out.Automatic = in.Automatic
out.ContainerNames = make([]string, len(in.ContainerNames))
copy(out.ContainerNames, in.ContainerNames)
out.LastTriggeredImage = in.LastTriggeredImage
if err := s.Convert(&in.From, &out.From, 0); err != nil {
return err
}
switch in.From.Kind {
case "DockerImage":
ref, err := imageapi.ParseDockerImageReference(in.From.Name)
if err != nil {
return err
}
out.Tag = ref.Tag
ref.Tag, ref.ID = "", ""
out.RepositoryName = ref.String()
case "ImageStreamTag":
name, tag, ok := imageapi.SplitImageStreamTag(in.From.Name)
if !ok {
return fmt.Errorf("ImageStreamTag object references must be in the form <name>:<tag>: %s", in.From.Name)
}
out.From.Kind = "ImageStream"
out.From.Name = name
out.Tag = tag
}
return nil
}
示例5: convert_api_Image_To_v1_Image
// The docker metadata must be cast to a version
func convert_api_Image_To_v1_Image(in *newer.Image, out *Image, s conversion.Scope) error {
if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil {
return err
}
out.DockerImageReference = in.DockerImageReference
out.DockerImageManifest = in.DockerImageManifest
version := in.DockerImageMetadataVersion
if len(version) == 0 {
version = "1.0"
}
data, err := kapi.Scheme.EncodeToVersion(&in.DockerImageMetadata, version)
if err != nil {
return err
}
out.DockerImageMetadata.RawJSON = data
out.DockerImageMetadataVersion = version
if in.DockerImageLayers != nil {
out.DockerImageLayers = make([]ImageLayer, len(in.DockerImageLayers))
for i := range in.DockerImageLayers {
if err := s.Convert(&in.DockerImageLayers[i], &out.DockerImageLayers[i], 0); err != nil {
return err
}
}
} else {
out.DockerImageLayers = nil
}
return nil
}
示例6: autoConvert_api_CustomDeploymentStrategyParams_To_v1_CustomDeploymentStrategyParams
func autoConvert_api_CustomDeploymentStrategyParams_To_v1_CustomDeploymentStrategyParams(in *deploy_api.CustomDeploymentStrategyParams, out *CustomDeploymentStrategyParams, s conversion.Scope) error {
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
defaulting.(func(*deploy_api.CustomDeploymentStrategyParams))(in)
}
out.Image = in.Image
if in.Environment != nil {
in, out := &in.Environment, &out.Environment
*out = make([]api_v1.EnvVar, len(*in))
for i := range *in {
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&(*in)[i], &(*out)[i], 0); err != nil {
return err
}
}
} else {
out.Environment = nil
}
if in.Command != nil {
in, out := &in.Command, &out.Command
*out = make([]string, len(*in))
copy(*out, *in)
} else {
out.Command = nil
}
return nil
}
示例7: autoConvert_authenticationk8sio_UserInfo_To_v1beta1_UserInfo
func autoConvert_authenticationk8sio_UserInfo_To_v1beta1_UserInfo(in *authentication_k8s_io.UserInfo, out *UserInfo, s conversion.Scope) error {
out.Username = in.Username
out.UID = in.UID
if in.Groups != nil {
in, out := &in.Groups, &out.Groups
*out = make([]string, len(*in))
copy(*out, *in)
} else {
out.Groups = nil
}
if in.Extra != nil {
in, out := &in.Extra, &out.Extra
*out = make(map[string][]string, len(*in))
for key, val := range *in {
newVal := new([]string)
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&val, newVal, 0); err != nil {
return err
}
(*out)[key] = *newVal
}
} else {
out.Extra = nil
}
return nil
}
示例8: autoConvert_v1_RepositoryImportStatus_To_api_RepositoryImportStatus
func autoConvert_v1_RepositoryImportStatus_To_api_RepositoryImportStatus(in *RepositoryImportStatus, out *image_api.RepositoryImportStatus, s conversion.Scope) error {
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&in.Status, &out.Status, 0); err != nil {
return err
}
if in.Images != nil {
in, out := &in.Images, &out.Images
*out = make([]image_api.ImageImportStatus, len(*in))
for i := range *in {
if err := Convert_v1_ImageImportStatus_To_api_ImageImportStatus(&(*in)[i], &(*out)[i], s); err != nil {
return err
}
}
} else {
out.Images = nil
}
if in.AdditionalTags != nil {
in, out := &in.AdditionalTags, &out.AdditionalTags
*out = make([]string, len(*in))
copy(*out, *in)
} else {
out.AdditionalTags = nil
}
return nil
}
示例9: autoConvert_api_Identity_To_v1_Identity
func autoConvert_api_Identity_To_v1_Identity(in *user_api.Identity, out *Identity, s conversion.Scope) error {
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
defaulting.(func(*user_api.Identity))(in)
}
if err := api.Convert_unversioned_TypeMeta_To_unversioned_TypeMeta(&in.TypeMeta, &out.TypeMeta, s); err != nil {
return err
}
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil {
return err
}
out.ProviderName = in.ProviderName
out.ProviderUserName = in.ProviderUserName
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&in.User, &out.User, 0); err != nil {
return err
}
if in.Extra != nil {
in, out := &in.Extra, &out.Extra
*out = make(map[string]string, len(*in))
for key, val := range *in {
(*out)[key] = val
}
} else {
out.Extra = nil
}
return nil
}
示例10: autoConvert_api_TagReference_To_v1_TagReference
func autoConvert_api_TagReference_To_v1_TagReference(in *image_api.TagReference, out *TagReference, s conversion.Scope) error {
out.Name = in.Name
if in.Annotations != nil {
in, out := &in.Annotations, &out.Annotations
*out = make(map[string]string, len(*in))
for key, val := range *in {
(*out)[key] = val
}
} else {
out.Annotations = nil
}
if in.From != nil {
in, out := &in.From, &out.From
*out = new(api_v1.ObjectReference)
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(*in, *out, 0); err != nil {
return err
}
} else {
out.From = nil
}
out.Reference = in.Reference
if in.Generation != nil {
in, out := &in.Generation, &out.Generation
*out = new(int64)
**out = **in
} else {
out.Generation = nil
}
if err := Convert_api_TagImportPolicy_To_v1_TagImportPolicy(&in.ImportPolicy, &out.ImportPolicy, s); err != nil {
return err
}
return nil
}
示例11: autoConvert_api_ImageStreamTag_To_v1_ImageStreamTag
func autoConvert_api_ImageStreamTag_To_v1_ImageStreamTag(in *image_api.ImageStreamTag, out *ImageStreamTag, s conversion.Scope) error {
if err := api.Convert_unversioned_TypeMeta_To_unversioned_TypeMeta(&in.TypeMeta, &out.TypeMeta, s); err != nil {
return err
}
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil {
return err
}
if in.Tag != nil {
in, out := &in.Tag, &out.Tag
*out = new(TagReference)
if err := Convert_api_TagReference_To_v1_TagReference(*in, *out, s); err != nil {
return err
}
} else {
out.Tag = nil
}
out.Generation = in.Generation
if in.Conditions != nil {
in, out := &in.Conditions, &out.Conditions
*out = make([]TagEventCondition, len(*in))
for i := range *in {
if err := Convert_api_TagEventCondition_To_v1_TagEventCondition(&(*in)[i], &(*out)[i], s); err != nil {
return err
}
}
} else {
out.Conditions = nil
}
if err := Convert_api_Image_To_v1_Image(&in.Image, &out.Image, s); err != nil {
return err
}
return nil
}
示例12: Convert_v1beta3_Image_To_api_Image
func Convert_v1beta3_Image_To_api_Image(in *Image, out *newer.Image, s conversion.Scope) error {
if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil {
return err
}
out.DockerImageReference = in.DockerImageReference
out.DockerImageManifest = in.DockerImageManifest
out.DockerImageManifestMediaType = in.DockerImageManifestMediaType
out.DockerImageConfig = in.DockerImageConfig
version := in.DockerImageMetadataVersion
if len(version) == 0 {
version = "1.0"
}
if len(in.DockerImageMetadata.Raw) > 0 {
// TODO: add a way to default the expected kind and version of an object if not set
obj, err := api.Scheme.New(unversioned.GroupVersionKind{Version: version, Kind: "DockerImage"})
if err != nil {
return err
}
if err := runtime.DecodeInto(api.Codecs.UniversalDecoder(), in.DockerImageMetadata.Raw, obj); err != nil {
return err
}
if err := s.Convert(obj, &out.DockerImageMetadata, 0); err != nil {
return err
}
}
out.DockerImageMetadataVersion = version
return nil
}
示例13: Convert_api_Image_To_v1beta3_Image
// The docker metadata must be cast to a version
func Convert_api_Image_To_v1beta3_Image(in *newer.Image, out *Image, s conversion.Scope) error {
if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil {
return err
}
out.DockerImageReference = in.DockerImageReference
out.DockerImageManifest = in.DockerImageManifest
out.DockerImageManifestMediaType = in.DockerImageManifestMediaType
out.DockerImageConfig = in.DockerImageConfig
gvString := in.DockerImageMetadataVersion
if len(gvString) == 0 {
gvString = "1.0"
}
if !strings.Contains(gvString, "/") {
gvString = "/" + gvString
}
version, err := unversioned.ParseGroupVersion(gvString)
if err != nil {
return err
}
data, err := runtime.Encode(api.Codecs.LegacyCodec(version), &in.DockerImageMetadata, version)
if err != nil {
return err
}
out.DockerImageMetadata.Raw = data
out.DockerImageMetadataVersion = version.Version
return nil
}
示例14: autoConvert_v1_OAuthAccessToken_To_api_OAuthAccessToken
func autoConvert_v1_OAuthAccessToken_To_api_OAuthAccessToken(in *OAuthAccessToken, out *oauth_api.OAuthAccessToken, s conversion.Scope) error {
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
defaulting.(func(*OAuthAccessToken))(in)
}
if err := api.Convert_unversioned_TypeMeta_To_unversioned_TypeMeta(&in.TypeMeta, &out.TypeMeta, s); err != nil {
return err
}
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil {
return err
}
out.ClientName = in.ClientName
out.ExpiresIn = in.ExpiresIn
if in.Scopes != nil {
in, out := &in.Scopes, &out.Scopes
*out = make([]string, len(*in))
copy(*out, *in)
} else {
out.Scopes = nil
}
out.RedirectURI = in.RedirectURI
out.UserName = in.UserName
out.UserUID = in.UserUID
out.AuthorizeToken = in.AuthorizeToken
out.RefreshToken = in.RefreshToken
return nil
}
示例15: autoConvert_api_DeploymentCauseImageTrigger_To_v1_DeploymentCauseImageTrigger
func autoConvert_api_DeploymentCauseImageTrigger_To_v1_DeploymentCauseImageTrigger(in *deploy_api.DeploymentCauseImageTrigger, out *DeploymentCauseImageTrigger, s conversion.Scope) error {
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&in.From, &out.From, 0); err != nil {
return err
}
return nil
}