284 lines
15 KiB
Go
284 lines
15 KiB
Go
/*
|
|
Copyright The Kubernetes Authors.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
*/
|
|
|
|
// Code generated by applyconfiguration-gen. DO NOT EDIT.
|
|
|
|
package v1
|
|
|
|
import (
|
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
types "k8s.io/apimachinery/pkg/types"
|
|
)
|
|
|
|
// ObjectMetaApplyConfiguration represents a declarative configuration of the ObjectMeta type for use
|
|
// with apply.
|
|
//
|
|
// ObjectMeta is metadata that all persisted resources must have, which includes all objects
|
|
// users must create.
|
|
type ObjectMetaApplyConfiguration 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: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
|
|
Name *string `json:"name,omitempty"`
|
|
// 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 return a 409.
|
|
//
|
|
// Applied only if Name is not specified.
|
|
// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
|
|
GenerateName *string `json:"generateName,omitempty"`
|
|
// Namespace defines the space within which 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: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces
|
|
Namespace *string `json:"namespace,omitempty"`
|
|
// 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: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
|
|
UID *types.UID `json:"uid,omitempty"`
|
|
// 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: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
|
|
ResourceVersion *string `json:"resourceVersion,omitempty"`
|
|
// A sequence number representing a specific generation of the desired state.
|
|
// Populated by the system. Read-only.
|
|
Generation *int64 `json:"generation,omitempty"`
|
|
// 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: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
CreationTimestamp *metav1.Time `json:"creationTimestamp,omitempty"`
|
|
// 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 the
|
|
// finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.
|
|
// Once the deletionTimestamp is 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: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
DeletionTimestamp *metav1.Time `json:"deletionTimestamp,omitempty"`
|
|
// 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.
|
|
DeletionGracePeriodSeconds *int64 `json:"deletionGracePeriodSeconds,omitempty"`
|
|
// 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: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels
|
|
Labels map[string]string `json:"labels,omitempty"`
|
|
// 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: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations
|
|
Annotations map[string]string `json:"annotations,omitempty"`
|
|
// 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.
|
|
OwnerReferences []OwnerReferenceApplyConfiguration `json:"ownerReferences,omitempty"`
|
|
// 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.
|
|
// Finalizers may be processed and removed in any order. Order is NOT enforced
|
|
// because it introduces significant risk of stuck finalizers.
|
|
// finalizers is a shared field, any actor with permission can reorder it.
|
|
// If the finalizer list is processed in order, then this can lead to a situation
|
|
// in which the component responsible for the first finalizer in the list is
|
|
// waiting for a signal (field value, external system, or other) produced by a
|
|
// component responsible for a finalizer later in the list, resulting in a deadlock.
|
|
// Without enforced ordering finalizers are free to order amongst themselves and
|
|
// are not vulnerable to ordering changes in the list.
|
|
Finalizers []string `json:"finalizers,omitempty"`
|
|
}
|
|
|
|
// ObjectMetaApplyConfiguration constructs a declarative configuration of the ObjectMeta type for use with
|
|
// apply.
|
|
func ObjectMeta() *ObjectMetaApplyConfiguration {
|
|
return &ObjectMetaApplyConfiguration{}
|
|
}
|
|
|
|
// WithName sets the Name field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the Name field is set to the value of the last call.
|
|
func (b *ObjectMetaApplyConfiguration) WithName(value string) *ObjectMetaApplyConfiguration {
|
|
b.Name = &value
|
|
return b
|
|
}
|
|
|
|
// WithGenerateName sets the GenerateName field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the GenerateName field is set to the value of the last call.
|
|
func (b *ObjectMetaApplyConfiguration) WithGenerateName(value string) *ObjectMetaApplyConfiguration {
|
|
b.GenerateName = &value
|
|
return b
|
|
}
|
|
|
|
// WithNamespace sets the Namespace field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the Namespace field is set to the value of the last call.
|
|
func (b *ObjectMetaApplyConfiguration) WithNamespace(value string) *ObjectMetaApplyConfiguration {
|
|
b.Namespace = &value
|
|
return b
|
|
}
|
|
|
|
// WithUID sets the UID field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the UID field is set to the value of the last call.
|
|
func (b *ObjectMetaApplyConfiguration) WithUID(value types.UID) *ObjectMetaApplyConfiguration {
|
|
b.UID = &value
|
|
return b
|
|
}
|
|
|
|
// WithResourceVersion sets the ResourceVersion field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the ResourceVersion field is set to the value of the last call.
|
|
func (b *ObjectMetaApplyConfiguration) WithResourceVersion(value string) *ObjectMetaApplyConfiguration {
|
|
b.ResourceVersion = &value
|
|
return b
|
|
}
|
|
|
|
// WithGeneration sets the Generation field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the Generation field is set to the value of the last call.
|
|
func (b *ObjectMetaApplyConfiguration) WithGeneration(value int64) *ObjectMetaApplyConfiguration {
|
|
b.Generation = &value
|
|
return b
|
|
}
|
|
|
|
// WithCreationTimestamp sets the CreationTimestamp field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the CreationTimestamp field is set to the value of the last call.
|
|
func (b *ObjectMetaApplyConfiguration) WithCreationTimestamp(value metav1.Time) *ObjectMetaApplyConfiguration {
|
|
b.CreationTimestamp = &value
|
|
return b
|
|
}
|
|
|
|
// WithDeletionTimestamp sets the DeletionTimestamp field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the DeletionTimestamp field is set to the value of the last call.
|
|
func (b *ObjectMetaApplyConfiguration) WithDeletionTimestamp(value metav1.Time) *ObjectMetaApplyConfiguration {
|
|
b.DeletionTimestamp = &value
|
|
return b
|
|
}
|
|
|
|
// WithDeletionGracePeriodSeconds sets the DeletionGracePeriodSeconds field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the DeletionGracePeriodSeconds field is set to the value of the last call.
|
|
func (b *ObjectMetaApplyConfiguration) WithDeletionGracePeriodSeconds(value int64) *ObjectMetaApplyConfiguration {
|
|
b.DeletionGracePeriodSeconds = &value
|
|
return b
|
|
}
|
|
|
|
// WithLabels puts the entries into the Labels field in the declarative configuration
|
|
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
|
// If called multiple times, the entries provided by each call will be put on the Labels field,
|
|
// overwriting an existing map entries in Labels field with the same key.
|
|
func (b *ObjectMetaApplyConfiguration) WithLabels(entries map[string]string) *ObjectMetaApplyConfiguration {
|
|
if b.Labels == nil && len(entries) > 0 {
|
|
b.Labels = make(map[string]string, len(entries))
|
|
}
|
|
for k, v := range entries {
|
|
b.Labels[k] = v
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithAnnotations puts the entries into the Annotations field in the declarative configuration
|
|
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
|
// If called multiple times, the entries provided by each call will be put on the Annotations field,
|
|
// overwriting an existing map entries in Annotations field with the same key.
|
|
func (b *ObjectMetaApplyConfiguration) WithAnnotations(entries map[string]string) *ObjectMetaApplyConfiguration {
|
|
if b.Annotations == nil && len(entries) > 0 {
|
|
b.Annotations = make(map[string]string, len(entries))
|
|
}
|
|
for k, v := range entries {
|
|
b.Annotations[k] = v
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithOwnerReferences adds the given value to the OwnerReferences field in the declarative configuration
|
|
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
|
// If called multiple times, values provided by each call will be appended to the OwnerReferences field.
|
|
func (b *ObjectMetaApplyConfiguration) WithOwnerReferences(values ...*OwnerReferenceApplyConfiguration) *ObjectMetaApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithOwnerReferences")
|
|
}
|
|
b.OwnerReferences = append(b.OwnerReferences, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithFinalizers adds the given value to the Finalizers field in the declarative configuration
|
|
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
|
// If called multiple times, values provided by each call will be appended to the Finalizers field.
|
|
func (b *ObjectMetaApplyConfiguration) WithFinalizers(values ...string) *ObjectMetaApplyConfiguration {
|
|
for i := range values {
|
|
b.Finalizers = append(b.Finalizers, values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// GetName retrieves the value of the Name field in the declarative configuration.
|
|
func (b *ObjectMetaApplyConfiguration) GetName() *string {
|
|
return b.Name
|
|
}
|
|
|
|
// GetNamespace retrieves the value of the Namespace field in the declarative configuration.
|
|
func (b *ObjectMetaApplyConfiguration) GetNamespace() *string {
|
|
return b.Namespace
|
|
}
|