mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-03 19:58:17 +00:00 
			
		
		
		
	Move ObjectMeta to metav1
This commit is contained in:
		@@ -57,6 +57,7 @@ import (
 | 
			
		||||
 | 
			
		||||
// ObjectMeta is metadata that all persisted resources must have, which includes all objects
 | 
			
		||||
// users must create.
 | 
			
		||||
// DEPRECATED: Use k8s.io/kubernetes/pkg/apis/meta/v1.ObjectMeta instead - this type will be removed soon.
 | 
			
		||||
type ObjectMeta struct {
 | 
			
		||||
	// Name is unique within a namespace.  Name is required when creating resources, although
 | 
			
		||||
	// some resources may allow a client to request the generation of an appropriate name
 | 
			
		||||
 
 | 
			
		||||
@@ -65,6 +65,8 @@ import (
 | 
			
		||||
 | 
			
		||||
// ObjectMeta is metadata that all persisted resources must have, which includes all objects
 | 
			
		||||
// users must create.
 | 
			
		||||
// DEPRECATED: Use k8s.io/kubernetes/pkg/apis/meta/v1.ObjectMeta instead - this type will be removed soon.
 | 
			
		||||
// +k8s:openapi-gen=false
 | 
			
		||||
type ObjectMeta struct {
 | 
			
		||||
	// Name must be unique within a namespace. Is required when creating resources, although
 | 
			
		||||
	// some resources may allow a client to request the generation of an appropriate name
 | 
			
		||||
 
 | 
			
		||||
@@ -71,6 +71,154 @@ type ListMeta struct {
 | 
			
		||||
	ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,2,opt,name=resourceVersion"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ObjectMeta is metadata that all persisted resources must have, which includes all objects
 | 
			
		||||
// users must create.
 | 
			
		||||
type ObjectMeta struct {
 | 
			
		||||
	// Name must be unique within a namespace. Is required when creating resources, although
 | 
			
		||||
	// some resources may allow a client to request the generation of an appropriate name
 | 
			
		||||
	// automatically. Name is primarily intended for creation idempotence and configuration
 | 
			
		||||
	// definition.
 | 
			
		||||
	// Cannot be updated.
 | 
			
		||||
	// More info: http://kubernetes.io/docs/user-guide/identifiers#names
 | 
			
		||||
	// +optional
 | 
			
		||||
	Name string `json:"name,omitempty" protobuf:"bytes,1,opt,name=name"`
 | 
			
		||||
 | 
			
		||||
	// GenerateName is an optional prefix, used by the server, to generate a unique
 | 
			
		||||
	// name ONLY IF the Name field has not been provided.
 | 
			
		||||
	// If this field is used, the name returned to the client will be different
 | 
			
		||||
	// than the name passed. This value will also be combined with a unique suffix.
 | 
			
		||||
	// The provided value has the same validation rules as the Name field,
 | 
			
		||||
	// and may be truncated by the length of the suffix required to make the value
 | 
			
		||||
	// unique on the server.
 | 
			
		||||
	//
 | 
			
		||||
	// If this field is specified and the generated name exists, the server will
 | 
			
		||||
	// NOT return a 409 - instead, it will either return 201 Created or 500 with Reason
 | 
			
		||||
	// ServerTimeout indicating a unique name could not be found in the time allotted, and the client
 | 
			
		||||
	// should retry (optionally after the time indicated in the Retry-After header).
 | 
			
		||||
	//
 | 
			
		||||
	// Applied only if Name is not specified.
 | 
			
		||||
	// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#idempotency
 | 
			
		||||
	// +optional
 | 
			
		||||
	GenerateName string `json:"generateName,omitempty" protobuf:"bytes,2,opt,name=generateName"`
 | 
			
		||||
 | 
			
		||||
	// Namespace defines the space within each name must be unique. An empty namespace is
 | 
			
		||||
	// equivalent to the "default" namespace, but "default" is the canonical representation.
 | 
			
		||||
	// Not all objects are required to be scoped to a namespace - the value of this field for
 | 
			
		||||
	// those objects will be empty.
 | 
			
		||||
	//
 | 
			
		||||
	// Must be a DNS_LABEL.
 | 
			
		||||
	// Cannot be updated.
 | 
			
		||||
	// More info: http://kubernetes.io/docs/user-guide/namespaces
 | 
			
		||||
	// +optional
 | 
			
		||||
	Namespace string `json:"namespace,omitempty" protobuf:"bytes,3,opt,name=namespace"`
 | 
			
		||||
 | 
			
		||||
	// SelfLink is a URL representing this object.
 | 
			
		||||
	// Populated by the system.
 | 
			
		||||
	// Read-only.
 | 
			
		||||
	// +optional
 | 
			
		||||
	SelfLink string `json:"selfLink,omitempty" protobuf:"bytes,4,opt,name=selfLink"`
 | 
			
		||||
 | 
			
		||||
	// UID is the unique in time and space value for this object. It is typically generated by
 | 
			
		||||
	// the server on successful creation of a resource and is not allowed to change on PUT
 | 
			
		||||
	// operations.
 | 
			
		||||
	//
 | 
			
		||||
	// Populated by the system.
 | 
			
		||||
	// Read-only.
 | 
			
		||||
	// More info: http://kubernetes.io/docs/user-guide/identifiers#uids
 | 
			
		||||
	// +optional
 | 
			
		||||
	UID types.UID `json:"uid,omitempty" protobuf:"bytes,5,opt,name=uid,casttype=k8s.io/kubernetes/pkg/types.UID"`
 | 
			
		||||
 | 
			
		||||
	// An opaque value that represents the internal version of this object that can
 | 
			
		||||
	// be used by clients to determine when objects have changed. May be used for optimistic
 | 
			
		||||
	// concurrency, change detection, and the watch operation on a resource or set of resources.
 | 
			
		||||
	// Clients must treat these values as opaque and passed unmodified back to the server.
 | 
			
		||||
	// They may only be valid for a particular resource or set of resources.
 | 
			
		||||
	//
 | 
			
		||||
	// Populated by the system.
 | 
			
		||||
	// Read-only.
 | 
			
		||||
	// Value must be treated as opaque by clients and .
 | 
			
		||||
	// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#concurrency-control-and-consistency
 | 
			
		||||
	// +optional
 | 
			
		||||
	ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,6,opt,name=resourceVersion"`
 | 
			
		||||
 | 
			
		||||
	// A sequence number representing a specific generation of the desired state.
 | 
			
		||||
	// Populated by the system. Read-only.
 | 
			
		||||
	// +optional
 | 
			
		||||
	Generation int64 `json:"generation,omitempty" protobuf:"varint,7,opt,name=generation"`
 | 
			
		||||
 | 
			
		||||
	// CreationTimestamp is a timestamp representing the server time when this object was
 | 
			
		||||
	// created. It is not guaranteed to be set in happens-before order across separate operations.
 | 
			
		||||
	// Clients may not set this value. It is represented in RFC3339 form and is in UTC.
 | 
			
		||||
	//
 | 
			
		||||
	// Populated by the system.
 | 
			
		||||
	// Read-only.
 | 
			
		||||
	// Null for lists.
 | 
			
		||||
	// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata
 | 
			
		||||
	// +optional
 | 
			
		||||
	CreationTimestamp Time `json:"creationTimestamp,omitempty" protobuf:"bytes,8,opt,name=creationTimestamp"`
 | 
			
		||||
 | 
			
		||||
	// DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This
 | 
			
		||||
	// field is set by the server when a graceful deletion is requested by the user, and is not
 | 
			
		||||
	// directly settable by a client. The resource is expected to be deleted (no longer visible
 | 
			
		||||
	// from resource lists, and not reachable by name) after the time in this field. Once set,
 | 
			
		||||
	// this value may not be unset or be set further into the future, although it may be shortened
 | 
			
		||||
	// or the resource may be deleted prior to this time. For example, a user may request that
 | 
			
		||||
	// a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination
 | 
			
		||||
	// signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard
 | 
			
		||||
	// termination signal (SIGKILL) to the container and after cleanup, remove the pod from the
 | 
			
		||||
	// API. In the presence of network partitions, this object may still exist after this
 | 
			
		||||
	// timestamp, until an administrator or automated process can determine the resource is
 | 
			
		||||
	// fully terminated.
 | 
			
		||||
	// If not set, graceful deletion of the object has not been requested.
 | 
			
		||||
	//
 | 
			
		||||
	// Populated by the system when a graceful deletion is requested.
 | 
			
		||||
	// Read-only.
 | 
			
		||||
	// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata
 | 
			
		||||
	// +optional
 | 
			
		||||
	DeletionTimestamp *Time `json:"deletionTimestamp,omitempty" protobuf:"bytes,9,opt,name=deletionTimestamp"`
 | 
			
		||||
 | 
			
		||||
	// Number of seconds allowed for this object to gracefully terminate before
 | 
			
		||||
	// it will be removed from the system. Only set when deletionTimestamp is also set.
 | 
			
		||||
	// May only be shortened.
 | 
			
		||||
	// Read-only.
 | 
			
		||||
	// +optional
 | 
			
		||||
	DeletionGracePeriodSeconds *int64 `json:"deletionGracePeriodSeconds,omitempty" protobuf:"varint,10,opt,name=deletionGracePeriodSeconds"`
 | 
			
		||||
 | 
			
		||||
	// Map of string keys and values that can be used to organize and categorize
 | 
			
		||||
	// (scope and select) objects. May match selectors of replication controllers
 | 
			
		||||
	// and services.
 | 
			
		||||
	// More info: http://kubernetes.io/docs/user-guide/labels
 | 
			
		||||
	// +optional
 | 
			
		||||
	Labels map[string]string `json:"labels,omitempty" protobuf:"bytes,11,rep,name=labels"`
 | 
			
		||||
 | 
			
		||||
	// Annotations is an unstructured key value map stored with a resource that may be
 | 
			
		||||
	// set by external tools to store and retrieve arbitrary metadata. They are not
 | 
			
		||||
	// queryable and should be preserved when modifying objects.
 | 
			
		||||
	// More info: http://kubernetes.io/docs/user-guide/annotations
 | 
			
		||||
	// +optional
 | 
			
		||||
	Annotations map[string]string `json:"annotations,omitempty" protobuf:"bytes,12,rep,name=annotations"`
 | 
			
		||||
 | 
			
		||||
	// List of objects depended by this object. If ALL objects in the list have
 | 
			
		||||
	// been deleted, this object will be garbage collected. If this object is managed by a controller,
 | 
			
		||||
	// then an entry in this list will point to this controller, with the controller field set to true.
 | 
			
		||||
	// There cannot be more than one managing controller.
 | 
			
		||||
	// +optional
 | 
			
		||||
	OwnerReferences []OwnerReference `json:"ownerReferences,omitempty" patchStrategy:"merge" patchMergeKey:"uid" protobuf:"bytes,13,rep,name=ownerReferences"`
 | 
			
		||||
 | 
			
		||||
	// Must be empty before the object is deleted from the registry. Each entry
 | 
			
		||||
	// is an identifier for the responsible component that will remove the entry
 | 
			
		||||
	// from the list. If the deletionTimestamp of the object is non-nil, entries
 | 
			
		||||
	// in this list can only be removed.
 | 
			
		||||
	// +optional
 | 
			
		||||
	Finalizers []string `json:"finalizers,omitempty" patchStrategy:"merge" protobuf:"bytes,14,rep,name=finalizers"`
 | 
			
		||||
 | 
			
		||||
	// The name of the cluster which the object belongs to.
 | 
			
		||||
	// This is used to distinguish resources with same name and namespace in different clusters.
 | 
			
		||||
	// This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.
 | 
			
		||||
	// +optional
 | 
			
		||||
	ClusterName string `json:"clusterName,omitempty" protobuf:"bytes,15,opt,name=clusterName"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// OwnerReference contains enough information to let you identify an owning
 | 
			
		||||
// object. Currently, an owning object must be in the same namespace, so there
 | 
			
		||||
// is no namespace field.
 | 
			
		||||
 
 | 
			
		||||
@@ -21,9 +21,9 @@ import (
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	apierrors "k8s.io/apimachinery/pkg/api/errors"
 | 
			
		||||
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
 | 
			
		||||
	"k8s.io/apimachinery/pkg/runtime/schema"
 | 
			
		||||
	"k8s.io/apimachinery/pkg/util/wait"
 | 
			
		||||
	legacyv1 "k8s.io/kubernetes/pkg/api/v1"
 | 
			
		||||
	authorizationv1beta1 "k8s.io/kubernetes/pkg/apis/authorization/v1beta1"
 | 
			
		||||
	rbacv1alpha1 "k8s.io/kubernetes/pkg/apis/rbac/v1alpha1"
 | 
			
		||||
	v1beta1authorization "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/authorization/v1beta1"
 | 
			
		||||
@@ -73,7 +73,7 @@ func WaitForAuthorizationUpdate(c v1beta1authorization.SubjectAccessReviewsGette
 | 
			
		||||
func BindClusterRole(c v1alpha1rbac.ClusterRoleBindingsGetter, clusterRole, ns string, subjects ...rbacv1alpha1.Subject) {
 | 
			
		||||
	// Since the namespace names are unique, we can leave this lying around so we don't have to race any caches
 | 
			
		||||
	_, err := c.ClusterRoleBindings().Create(&rbacv1alpha1.ClusterRoleBinding{
 | 
			
		||||
		ObjectMeta: legacyv1.ObjectMeta{
 | 
			
		||||
		ObjectMeta: metav1.ObjectMeta{
 | 
			
		||||
			Name: ns + "--" + clusterRole,
 | 
			
		||||
		},
 | 
			
		||||
		RoleRef: rbacv1alpha1.RoleRef{
 | 
			
		||||
@@ -94,7 +94,7 @@ func BindClusterRole(c v1alpha1rbac.ClusterRoleBindingsGetter, clusterRole, ns s
 | 
			
		||||
func BindClusterRoleInNamespace(c v1alpha1rbac.RoleBindingsGetter, clusterRole, ns string, subjects ...rbacv1alpha1.Subject) {
 | 
			
		||||
	// Since the namespace names are unique, we can leave this lying around so we don't have to race any caches
 | 
			
		||||
	_, err := c.RoleBindings(ns).Create(&rbacv1alpha1.RoleBinding{
 | 
			
		||||
		ObjectMeta: legacyv1.ObjectMeta{
 | 
			
		||||
		ObjectMeta: metav1.ObjectMeta{
 | 
			
		||||
			Name: ns + "--" + clusterRole,
 | 
			
		||||
		},
 | 
			
		||||
		RoleRef: rbacv1alpha1.RoleRef{
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user