当前位置: 首页>>代码示例>>Golang>>正文


Golang v1.ObjectMeta类代码示例

本文整理汇总了Golang中k8s/io/kubernetes/pkg/api/v1.ObjectMeta的典型用法代码示例。如果您正苦于以下问题:Golang ObjectMeta类的具体用法?Golang ObjectMeta怎么用?Golang ObjectMeta使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了ObjectMeta类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: createObjectMeta

func createObjectMeta(name string, labels map[string]string) api.ObjectMeta {
	objectMeta := api.ObjectMeta{Name: name, Namespace: "default"}

	if labels != nil {
		objectMeta.Labels = labels
	}

	return objectMeta
}
开发者ID:runseb,项目名称:helm,代码行数:9,代码来源:client_test.go

示例2: ObjectMetaIsEquivalent

/*
ObjectMetaIsEquivalent determines whether two ObjectMeta's (typically one from a federated API object,
and the other from a cluster object) are equivalent.
*/
func ObjectMetaIsEquivalent(m1, m2 v1.ObjectMeta) bool {
	// First make all of the read-only fields equal, then perform a deep equality comparison
	m1.SelfLink = m2.SelfLink                   // Might be different in different cluster contexts.
	m1.UID = m2.UID                             // Definitely different in different cluster contexts
	m1.ResourceVersion = m2.ResourceVersion     // Definitely different in different cluster contexts
	m1.Generation = m2.Generation               // Might be different in different cluster contexts.
	m1.CreationTimestamp = m2.CreationTimestamp // Definitely different in different cluster contexts.
	m1.DeletionTimestamp = m2.DeletionTimestamp // Might be different in different cluster contexts.
	m1.OwnerReferences = nil                    // Might be different in different cluster contexts.
	m2.OwnerReferences = nil
	m1.Finalizers = nil // Might be different in different cluster contexts.
	m2.Finalizers = nil

	return reflect.DeepEqual(m1, m2)
}
开发者ID:cheld,项目名称:kubernetes,代码行数:19,代码来源:util.go

示例3: SetMasterTaintTolerations

func SetMasterTaintTolerations(meta *v1.ObjectMeta) {
	tolerationsAnnotation, _ := json.Marshal([]v1.Toleration{{Key: "dedicated", Value: "master", Effect: "NoSchedule"}})
	if meta.Annotations == nil {
		meta.Annotations = map[string]string{}
	}
	meta.Annotations[v1.TolerationsAnnotationKey] = string(tolerationsAnnotation)
}
开发者ID:abutcher,项目名称:kubernetes,代码行数:7,代码来源:apiclient.go

示例4: SetNodeAffinity

// SetNodeAffinity is a basic helper to set meta.Annotations[v1.AffinityAnnotationKey] for one or more v1.NodeSelectorRequirement(s)
func SetNodeAffinity(meta *v1.ObjectMeta, expr ...v1.NodeSelectorRequirement) {
	nodeAffinity := &v1.NodeAffinity{
		RequiredDuringSchedulingIgnoredDuringExecution: &v1.NodeSelector{
			NodeSelectorTerms: []v1.NodeSelectorTerm{{MatchExpressions: expr}},
		},
	}
	affinityAnnotation, _ := json.Marshal(v1.Affinity{NodeAffinity: nodeAffinity})
	if meta.Annotations == nil {
		meta.Annotations = map[string]string{}
	}
	meta.Annotations[v1.AffinityAnnotationKey] = string(affinityAnnotation)
}
开发者ID:abutcher,项目名称:kubernetes,代码行数:13,代码来源:apiclient.go

示例5: deepCopy_v1_ObjectMeta

func deepCopy_v1_ObjectMeta(in v1.ObjectMeta, out *v1.ObjectMeta, c *conversion.Cloner) error {
	out.Name = in.Name
	out.GenerateName = in.GenerateName
	out.Namespace = in.Namespace
	out.SelfLink = in.SelfLink
	out.UID = in.UID
	out.ResourceVersion = in.ResourceVersion
	out.Generation = in.Generation
	if err := deepCopy_unversioned_Time(in.CreationTimestamp, &out.CreationTimestamp, c); err != nil {
		return err
	}
	if in.DeletionTimestamp != nil {
		out.DeletionTimestamp = new(unversioned.Time)
		if err := deepCopy_unversioned_Time(*in.DeletionTimestamp, out.DeletionTimestamp, c); err != nil {
			return err
		}
	} else {
		out.DeletionTimestamp = nil
	}
	if in.DeletionGracePeriodSeconds != nil {
		out.DeletionGracePeriodSeconds = new(int64)
		*out.DeletionGracePeriodSeconds = *in.DeletionGracePeriodSeconds
	} else {
		out.DeletionGracePeriodSeconds = nil
	}
	if in.Labels != nil {
		out.Labels = make(map[string]string)
		for key, val := range in.Labels {
			out.Labels[key] = val
		}
	} else {
		out.Labels = nil
	}
	if in.Annotations != nil {
		out.Annotations = make(map[string]string)
		for key, val := range in.Annotations {
			out.Annotations[key] = val
		}
	} else {
		out.Annotations = nil
	}
	return nil
}
开发者ID:alena1108,项目名称:kubernetes,代码行数:43,代码来源:deep_copy_generated.go

示例6: convert_api_ObjectMeta_To_v1_ObjectMeta

func convert_api_ObjectMeta_To_v1_ObjectMeta(in *api.ObjectMeta, out *v1.ObjectMeta, s conversion.Scope) error {
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
		defaulting.(func(*api.ObjectMeta))(in)
	}
	out.Name = in.Name
	out.GenerateName = in.GenerateName
	out.Namespace = in.Namespace
	out.SelfLink = in.SelfLink
	out.UID = in.UID
	out.ResourceVersion = in.ResourceVersion
	out.Generation = in.Generation
	if err := s.Convert(&in.CreationTimestamp, &out.CreationTimestamp, 0); err != nil {
		return err
	}
	if in.DeletionTimestamp != nil {
		if err := s.Convert(&in.DeletionTimestamp, &out.DeletionTimestamp, 0); err != nil {
			return err
		}
	} else {
		out.DeletionTimestamp = nil
	}
	if in.DeletionGracePeriodSeconds != nil {
		out.DeletionGracePeriodSeconds = new(int64)
		*out.DeletionGracePeriodSeconds = *in.DeletionGracePeriodSeconds
	} else {
		out.DeletionGracePeriodSeconds = nil
	}
	if in.Labels != nil {
		out.Labels = make(map[string]string)
		for key, val := range in.Labels {
			out.Labels[key] = val
		}
	} else {
		out.Labels = nil
	}
	if in.Annotations != nil {
		out.Annotations = make(map[string]string)
		for key, val := range in.Annotations {
			out.Annotations[key] = val
		}
	} else {
		out.Annotations = nil
	}
	return nil
}
开发者ID:ngbinh,项目名称:kubernetes,代码行数:45,代码来源:conversion_generated.go


注:本文中的k8s/io/kubernetes/pkg/api/v1.ObjectMeta类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。