mirror of
https://github.com/kubernetes/client-go.git
synced 2026-02-21 23:53:16 +00:00
688 lines
38 KiB
Go
688 lines
38 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 (
|
|
corev1 "k8s.io/api/core/v1"
|
|
)
|
|
|
|
// PodSpecApplyConfiguration represents a declarative configuration of the PodSpec type for use
|
|
// with apply.
|
|
//
|
|
// PodSpec is a description of a pod.
|
|
type PodSpecApplyConfiguration struct {
|
|
// List of volumes that can be mounted by containers belonging to the pod.
|
|
// More info: https://kubernetes.io/docs/concepts/storage/volumes
|
|
Volumes []VolumeApplyConfiguration `json:"volumes,omitempty"`
|
|
// List of initialization containers belonging to the pod.
|
|
// Init containers are executed in order prior to containers being started. If any
|
|
// init container fails, the pod is considered to have failed and is handled according
|
|
// to its restartPolicy. The name for an init container or normal container must be
|
|
// unique among all containers.
|
|
// Init containers may not have Lifecycle actions, Readiness probes, Liveness probes, or Startup probes.
|
|
// The resourceRequirements of an init container are taken into account during scheduling
|
|
// by finding the highest request/limit for each resource type, and then using the max of
|
|
// that value or the sum of the normal containers. Limits are applied to init containers
|
|
// in a similar fashion.
|
|
// Init containers cannot currently be added or removed.
|
|
// Cannot be updated.
|
|
// More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
|
|
InitContainers []ContainerApplyConfiguration `json:"initContainers,omitempty"`
|
|
// List of containers belonging to the pod.
|
|
// Containers cannot currently be added or removed.
|
|
// There must be at least one container in a Pod.
|
|
// Cannot be updated.
|
|
Containers []ContainerApplyConfiguration `json:"containers,omitempty"`
|
|
// List of ephemeral containers run in this pod. Ephemeral containers may be run in an existing
|
|
// pod to perform user-initiated actions such as debugging. This list cannot be specified when
|
|
// creating a pod, and it cannot be modified by updating the pod spec. In order to add an
|
|
// ephemeral container to an existing pod, use the pod's ephemeralcontainers subresource.
|
|
EphemeralContainers []EphemeralContainerApplyConfiguration `json:"ephemeralContainers,omitempty"`
|
|
// Restart policy for all containers within the pod.
|
|
// One of Always, OnFailure, Never. In some contexts, only a subset of those values may be permitted.
|
|
// Default to Always.
|
|
// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy
|
|
RestartPolicy *corev1.RestartPolicy `json:"restartPolicy,omitempty"`
|
|
// Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request.
|
|
// Value must be non-negative integer. The value zero indicates stop immediately via
|
|
// the kill signal (no opportunity to shut down).
|
|
// If this value is nil, the default grace period will be used instead.
|
|
// The grace period is the duration in seconds after the processes running in the pod are sent
|
|
// a termination signal and the time when the processes are forcibly halted with a kill signal.
|
|
// Set this value longer than the expected cleanup time for your process.
|
|
// Defaults to 30 seconds.
|
|
TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"`
|
|
// Optional duration in seconds the pod may be active on the node relative to
|
|
// StartTime before the system will actively try to mark it failed and kill associated containers.
|
|
// Value must be a positive integer.
|
|
ActiveDeadlineSeconds *int64 `json:"activeDeadlineSeconds,omitempty"`
|
|
// Set DNS policy for the pod.
|
|
// Defaults to "ClusterFirst".
|
|
// Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'.
|
|
// DNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy.
|
|
// To have DNS options set along with hostNetwork, you have to specify DNS policy
|
|
// explicitly to 'ClusterFirstWithHostNet'.
|
|
DNSPolicy *corev1.DNSPolicy `json:"dnsPolicy,omitempty"`
|
|
// NodeSelector is a selector which must be true for the pod to fit on a node.
|
|
// Selector which must match a node's labels for the pod to be scheduled on that node.
|
|
// More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
|
|
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
|
|
// ServiceAccountName is the name of the ServiceAccount to use to run this pod.
|
|
// More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
|
|
ServiceAccountName *string `json:"serviceAccountName,omitempty"`
|
|
// DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.
|
|
// Deprecated: Use serviceAccountName instead.
|
|
DeprecatedServiceAccount *string `json:"serviceAccount,omitempty"`
|
|
// AutomountServiceAccountToken indicates whether a service account token should be automatically mounted.
|
|
AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty"`
|
|
// NodeName indicates in which node this pod is scheduled.
|
|
// If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.
|
|
// Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.
|
|
// This field should not be used to express a desire for the pod to be scheduled on a specific node.
|
|
// https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename
|
|
NodeName *string `json:"nodeName,omitempty"`
|
|
// Host networking requested for this pod. Use the host's network namespace.
|
|
// When using HostNetwork you should specify ports so the scheduler is aware.
|
|
// When `hostNetwork` is true, specified `hostPort` fields in port definitions must match `containerPort`,
|
|
// and unspecified `hostPort` fields in port definitions are defaulted to match `containerPort`.
|
|
// Default to false.
|
|
HostNetwork *bool `json:"hostNetwork,omitempty"`
|
|
// Use the host's pid namespace.
|
|
// Optional: Default to false.
|
|
HostPID *bool `json:"hostPID,omitempty"`
|
|
// Use the host's ipc namespace.
|
|
// Optional: Default to false.
|
|
HostIPC *bool `json:"hostIPC,omitempty"`
|
|
// Share a single process namespace between all of the containers in a pod.
|
|
// When this is set containers will be able to view and signal processes from other containers
|
|
// in the same pod, and the first process in each container will not be assigned PID 1.
|
|
// HostPID and ShareProcessNamespace cannot both be set.
|
|
// Optional: Default to false.
|
|
ShareProcessNamespace *bool `json:"shareProcessNamespace,omitempty"`
|
|
// SecurityContext holds pod-level security attributes and common container settings.
|
|
// Optional: Defaults to empty. See type description for default values of each field.
|
|
SecurityContext *PodSecurityContextApplyConfiguration `json:"securityContext,omitempty"`
|
|
// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec.
|
|
// If specified, these secrets will be passed to individual puller implementations for them to use.
|
|
// More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
|
|
ImagePullSecrets []LocalObjectReferenceApplyConfiguration `json:"imagePullSecrets,omitempty"`
|
|
// Specifies the hostname of the Pod
|
|
// If not specified, the pod's hostname will be set to a system-defined value.
|
|
Hostname *string `json:"hostname,omitempty"`
|
|
// If specified, the fully qualified Pod hostname will be "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>".
|
|
// If not specified, the pod will not have a domainname at all.
|
|
Subdomain *string `json:"subdomain,omitempty"`
|
|
// If specified, the pod's scheduling constraints
|
|
Affinity *AffinityApplyConfiguration `json:"affinity,omitempty"`
|
|
// If specified, the pod will be dispatched by specified scheduler.
|
|
// If not specified, the pod will be dispatched by default scheduler.
|
|
SchedulerName *string `json:"schedulerName,omitempty"`
|
|
// If specified, the pod's tolerations.
|
|
Tolerations []TolerationApplyConfiguration `json:"tolerations,omitempty"`
|
|
// HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
|
|
// file if specified.
|
|
HostAliases []HostAliasApplyConfiguration `json:"hostAliases,omitempty"`
|
|
// If specified, indicates the pod's priority. "system-node-critical" and
|
|
// "system-cluster-critical" are two special keywords which indicate the
|
|
// highest priorities with the former being the highest priority. Any other
|
|
// name must be defined by creating a PriorityClass object with that name.
|
|
// If not specified, the pod priority will be default or zero if there is no
|
|
// default.
|
|
PriorityClassName *string `json:"priorityClassName,omitempty"`
|
|
// The priority value. Various system components use this field to find the
|
|
// priority of the pod. When Priority Admission Controller is enabled, it
|
|
// prevents users from setting this field. The admission controller populates
|
|
// this field from PriorityClassName.
|
|
// The higher the value, the higher the priority.
|
|
Priority *int32 `json:"priority,omitempty"`
|
|
// Specifies the DNS parameters of a pod.
|
|
// Parameters specified here will be merged to the generated DNS
|
|
// configuration based on DNSPolicy.
|
|
DNSConfig *PodDNSConfigApplyConfiguration `json:"dnsConfig,omitempty"`
|
|
// If specified, all readiness gates will be evaluated for pod readiness.
|
|
// A pod is ready when all its containers are ready AND
|
|
// all conditions specified in the readiness gates have status equal to "True"
|
|
// More info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates
|
|
ReadinessGates []PodReadinessGateApplyConfiguration `json:"readinessGates,omitempty"`
|
|
// RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used
|
|
// to run this pod. If no RuntimeClass resource matches the named class, the pod will not be run.
|
|
// If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit class with an
|
|
// empty definition that uses the default runtime handler.
|
|
// More info: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class
|
|
RuntimeClassName *string `json:"runtimeClassName,omitempty"`
|
|
// EnableServiceLinks indicates whether information about services should be injected into pod's
|
|
// environment variables, matching the syntax of Docker links.
|
|
// Optional: Defaults to true.
|
|
EnableServiceLinks *bool `json:"enableServiceLinks,omitempty"`
|
|
// PreemptionPolicy is the Policy for preempting pods with lower priority.
|
|
// One of Never, PreemptLowerPriority.
|
|
// Defaults to PreemptLowerPriority if unset.
|
|
PreemptionPolicy *corev1.PreemptionPolicy `json:"preemptionPolicy,omitempty"`
|
|
// Overhead represents the resource overhead associated with running a pod for a given RuntimeClass.
|
|
// This field will be autopopulated at admission time by the RuntimeClass admission controller. If
|
|
// the RuntimeClass admission controller is enabled, overhead must not be set in Pod create requests.
|
|
// The RuntimeClass admission controller will reject Pod create requests which have the overhead already
|
|
// set. If RuntimeClass is configured and selected in the PodSpec, Overhead will be set to the value
|
|
// defined in the corresponding RuntimeClass, otherwise it will remain unset and treated as zero.
|
|
// More info: https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md
|
|
Overhead *corev1.ResourceList `json:"overhead,omitempty"`
|
|
// TopologySpreadConstraints describes how a group of pods ought to spread across topology
|
|
// domains. Scheduler will schedule pods in a way which abides by the constraints.
|
|
// All topologySpreadConstraints are ANDed.
|
|
TopologySpreadConstraints []TopologySpreadConstraintApplyConfiguration `json:"topologySpreadConstraints,omitempty"`
|
|
// If true the pod's hostname will be configured as the pod's FQDN, rather than the leaf name (the default).
|
|
// In Linux containers, this means setting the FQDN in the hostname field of the kernel (the nodename field of struct utsname).
|
|
// In Windows containers, this means setting the registry value of hostname for the registry key HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters to FQDN.
|
|
// If a pod does not have FQDN, this has no effect.
|
|
// Default to false.
|
|
SetHostnameAsFQDN *bool `json:"setHostnameAsFQDN,omitempty"`
|
|
// Specifies the OS of the containers in the pod.
|
|
// Some pod and container fields are restricted if this is set.
|
|
//
|
|
// If the OS field is set to linux, the following fields must be unset:
|
|
// -securityContext.windowsOptions
|
|
//
|
|
// If the OS field is set to windows, following fields must be unset:
|
|
// - spec.hostPID
|
|
// - spec.hostIPC
|
|
// - spec.hostUsers
|
|
// - spec.resources
|
|
// - spec.securityContext.appArmorProfile
|
|
// - spec.securityContext.seLinuxOptions
|
|
// - spec.securityContext.seccompProfile
|
|
// - spec.securityContext.fsGroup
|
|
// - spec.securityContext.fsGroupChangePolicy
|
|
// - spec.securityContext.sysctls
|
|
// - spec.shareProcessNamespace
|
|
// - spec.securityContext.runAsUser
|
|
// - spec.securityContext.runAsGroup
|
|
// - spec.securityContext.supplementalGroups
|
|
// - spec.securityContext.supplementalGroupsPolicy
|
|
// - spec.containers[*].securityContext.appArmorProfile
|
|
// - spec.containers[*].securityContext.seLinuxOptions
|
|
// - spec.containers[*].securityContext.seccompProfile
|
|
// - spec.containers[*].securityContext.capabilities
|
|
// - spec.containers[*].securityContext.readOnlyRootFilesystem
|
|
// - spec.containers[*].securityContext.privileged
|
|
// - spec.containers[*].securityContext.allowPrivilegeEscalation
|
|
// - spec.containers[*].securityContext.procMount
|
|
// - spec.containers[*].securityContext.runAsUser
|
|
// - spec.containers[*].securityContext.runAsGroup
|
|
OS *PodOSApplyConfiguration `json:"os,omitempty"`
|
|
// Use the host's user namespace.
|
|
// Optional: Default to true.
|
|
// If set to true or not present, the pod will be run in the host user namespace, useful
|
|
// for when the pod needs a feature only available to the host user namespace, such as
|
|
// loading a kernel module with CAP_SYS_MODULE.
|
|
// When set to false, a new userns is created for the pod. Setting false is useful for
|
|
// mitigating container breakout vulnerabilities even allowing users to run their
|
|
// containers as root without actually having root privileges on the host.
|
|
// This field is alpha-level and is only honored by servers that enable the UserNamespacesSupport feature.
|
|
HostUsers *bool `json:"hostUsers,omitempty"`
|
|
// SchedulingGates is an opaque list of values that if specified will block scheduling the pod.
|
|
// If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
|
|
// scheduler will not attempt to schedule the pod.
|
|
//
|
|
// SchedulingGates can only be set at pod creation time, and be removed only afterwards.
|
|
SchedulingGates []PodSchedulingGateApplyConfiguration `json:"schedulingGates,omitempty"`
|
|
// ResourceClaims defines which ResourceClaims must be allocated
|
|
// and reserved before the Pod is allowed to start. The resources
|
|
// will be made available to those containers which consume them
|
|
// by name.
|
|
//
|
|
// This is a stable field but requires that the
|
|
// DynamicResourceAllocation feature gate is enabled.
|
|
//
|
|
// This field is immutable.
|
|
ResourceClaims []PodResourceClaimApplyConfiguration `json:"resourceClaims,omitempty"`
|
|
// Resources is the total amount of CPU and Memory resources required by all
|
|
// containers in the pod. It supports specifying Requests and Limits for
|
|
// "cpu", "memory" and "hugepages-" resource names only. ResourceClaims are not supported.
|
|
//
|
|
// This field enables fine-grained control over resource allocation for the
|
|
// entire pod, allowing resource sharing among containers in a pod.
|
|
// TODO: For beta graduation, expand this comment with a detailed explanation.
|
|
//
|
|
// This is an alpha field and requires enabling the PodLevelResources feature
|
|
// gate.
|
|
Resources *ResourceRequirementsApplyConfiguration `json:"resources,omitempty"`
|
|
// HostnameOverride specifies an explicit override for the pod's hostname as perceived by the pod.
|
|
// This field only specifies the pod's hostname and does not affect its DNS records.
|
|
// When this field is set to a non-empty string:
|
|
// - It takes precedence over the values set in `hostname` and `subdomain`.
|
|
// - The Pod's hostname will be set to this value.
|
|
// - `setHostnameAsFQDN` must be nil or set to false.
|
|
// - `hostNetwork` must be set to false.
|
|
//
|
|
// This field must be a valid DNS subdomain as defined in RFC 1123 and contain at most 64 characters.
|
|
// Requires the HostnameOverride feature gate to be enabled.
|
|
HostnameOverride *string `json:"hostnameOverride,omitempty"`
|
|
// WorkloadRef provides a reference to the Workload object that this Pod belongs to.
|
|
// This field is used by the scheduler to identify the PodGroup and apply the
|
|
// correct group scheduling policies. The Workload object referenced
|
|
// by this field may not exist at the time the Pod is created.
|
|
// This field is immutable, but a Workload object with the same name
|
|
// may be recreated with different policies. Doing this during pod scheduling
|
|
// may result in the placement not conforming to the expected policies.
|
|
WorkloadRef *WorkloadReferenceApplyConfiguration `json:"workloadRef,omitempty"`
|
|
}
|
|
|
|
// PodSpecApplyConfiguration constructs a declarative configuration of the PodSpec type for use with
|
|
// apply.
|
|
func PodSpec() *PodSpecApplyConfiguration {
|
|
return &PodSpecApplyConfiguration{}
|
|
}
|
|
|
|
// WithVolumes adds the given value to the Volumes 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 Volumes field.
|
|
func (b *PodSpecApplyConfiguration) WithVolumes(values ...*VolumeApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithVolumes")
|
|
}
|
|
b.Volumes = append(b.Volumes, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithInitContainers adds the given value to the InitContainers 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 InitContainers field.
|
|
func (b *PodSpecApplyConfiguration) WithInitContainers(values ...*ContainerApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithInitContainers")
|
|
}
|
|
b.InitContainers = append(b.InitContainers, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithContainers adds the given value to the Containers 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 Containers field.
|
|
func (b *PodSpecApplyConfiguration) WithContainers(values ...*ContainerApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithContainers")
|
|
}
|
|
b.Containers = append(b.Containers, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithEphemeralContainers adds the given value to the EphemeralContainers 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 EphemeralContainers field.
|
|
func (b *PodSpecApplyConfiguration) WithEphemeralContainers(values ...*EphemeralContainerApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithEphemeralContainers")
|
|
}
|
|
b.EphemeralContainers = append(b.EphemeralContainers, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithRestartPolicy sets the RestartPolicy 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 RestartPolicy field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithRestartPolicy(value corev1.RestartPolicy) *PodSpecApplyConfiguration {
|
|
b.RestartPolicy = &value
|
|
return b
|
|
}
|
|
|
|
// WithTerminationGracePeriodSeconds sets the TerminationGracePeriodSeconds 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 TerminationGracePeriodSeconds field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithTerminationGracePeriodSeconds(value int64) *PodSpecApplyConfiguration {
|
|
b.TerminationGracePeriodSeconds = &value
|
|
return b
|
|
}
|
|
|
|
// WithActiveDeadlineSeconds sets the ActiveDeadlineSeconds 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 ActiveDeadlineSeconds field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithActiveDeadlineSeconds(value int64) *PodSpecApplyConfiguration {
|
|
b.ActiveDeadlineSeconds = &value
|
|
return b
|
|
}
|
|
|
|
// WithDNSPolicy sets the DNSPolicy 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 DNSPolicy field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithDNSPolicy(value corev1.DNSPolicy) *PodSpecApplyConfiguration {
|
|
b.DNSPolicy = &value
|
|
return b
|
|
}
|
|
|
|
// WithNodeSelector puts the entries into the NodeSelector 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 NodeSelector field,
|
|
// overwriting an existing map entries in NodeSelector field with the same key.
|
|
func (b *PodSpecApplyConfiguration) WithNodeSelector(entries map[string]string) *PodSpecApplyConfiguration {
|
|
if b.NodeSelector == nil && len(entries) > 0 {
|
|
b.NodeSelector = make(map[string]string, len(entries))
|
|
}
|
|
for k, v := range entries {
|
|
b.NodeSelector[k] = v
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithServiceAccountName sets the ServiceAccountName 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 ServiceAccountName field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithServiceAccountName(value string) *PodSpecApplyConfiguration {
|
|
b.ServiceAccountName = &value
|
|
return b
|
|
}
|
|
|
|
// WithDeprecatedServiceAccount sets the DeprecatedServiceAccount 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 DeprecatedServiceAccount field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithDeprecatedServiceAccount(value string) *PodSpecApplyConfiguration {
|
|
b.DeprecatedServiceAccount = &value
|
|
return b
|
|
}
|
|
|
|
// WithAutomountServiceAccountToken sets the AutomountServiceAccountToken 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 AutomountServiceAccountToken field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithAutomountServiceAccountToken(value bool) *PodSpecApplyConfiguration {
|
|
b.AutomountServiceAccountToken = &value
|
|
return b
|
|
}
|
|
|
|
// WithNodeName sets the NodeName 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 NodeName field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithNodeName(value string) *PodSpecApplyConfiguration {
|
|
b.NodeName = &value
|
|
return b
|
|
}
|
|
|
|
// WithHostNetwork sets the HostNetwork 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 HostNetwork field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithHostNetwork(value bool) *PodSpecApplyConfiguration {
|
|
b.HostNetwork = &value
|
|
return b
|
|
}
|
|
|
|
// WithHostPID sets the HostPID 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 HostPID field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithHostPID(value bool) *PodSpecApplyConfiguration {
|
|
b.HostPID = &value
|
|
return b
|
|
}
|
|
|
|
// WithHostIPC sets the HostIPC 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 HostIPC field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithHostIPC(value bool) *PodSpecApplyConfiguration {
|
|
b.HostIPC = &value
|
|
return b
|
|
}
|
|
|
|
// WithShareProcessNamespace sets the ShareProcessNamespace 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 ShareProcessNamespace field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithShareProcessNamespace(value bool) *PodSpecApplyConfiguration {
|
|
b.ShareProcessNamespace = &value
|
|
return b
|
|
}
|
|
|
|
// WithSecurityContext sets the SecurityContext 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 SecurityContext field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithSecurityContext(value *PodSecurityContextApplyConfiguration) *PodSpecApplyConfiguration {
|
|
b.SecurityContext = value
|
|
return b
|
|
}
|
|
|
|
// WithImagePullSecrets adds the given value to the ImagePullSecrets 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 ImagePullSecrets field.
|
|
func (b *PodSpecApplyConfiguration) WithImagePullSecrets(values ...*LocalObjectReferenceApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithImagePullSecrets")
|
|
}
|
|
b.ImagePullSecrets = append(b.ImagePullSecrets, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithHostname sets the Hostname 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 Hostname field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithHostname(value string) *PodSpecApplyConfiguration {
|
|
b.Hostname = &value
|
|
return b
|
|
}
|
|
|
|
// WithSubdomain sets the Subdomain 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 Subdomain field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithSubdomain(value string) *PodSpecApplyConfiguration {
|
|
b.Subdomain = &value
|
|
return b
|
|
}
|
|
|
|
// WithAffinity sets the Affinity 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 Affinity field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithAffinity(value *AffinityApplyConfiguration) *PodSpecApplyConfiguration {
|
|
b.Affinity = value
|
|
return b
|
|
}
|
|
|
|
// WithSchedulerName sets the SchedulerName 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 SchedulerName field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithSchedulerName(value string) *PodSpecApplyConfiguration {
|
|
b.SchedulerName = &value
|
|
return b
|
|
}
|
|
|
|
// WithTolerations adds the given value to the Tolerations 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 Tolerations field.
|
|
func (b *PodSpecApplyConfiguration) WithTolerations(values ...*TolerationApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithTolerations")
|
|
}
|
|
b.Tolerations = append(b.Tolerations, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithHostAliases adds the given value to the HostAliases 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 HostAliases field.
|
|
func (b *PodSpecApplyConfiguration) WithHostAliases(values ...*HostAliasApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithHostAliases")
|
|
}
|
|
b.HostAliases = append(b.HostAliases, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithPriorityClassName sets the PriorityClassName 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 PriorityClassName field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithPriorityClassName(value string) *PodSpecApplyConfiguration {
|
|
b.PriorityClassName = &value
|
|
return b
|
|
}
|
|
|
|
// WithPriority sets the Priority 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 Priority field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithPriority(value int32) *PodSpecApplyConfiguration {
|
|
b.Priority = &value
|
|
return b
|
|
}
|
|
|
|
// WithDNSConfig sets the DNSConfig 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 DNSConfig field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithDNSConfig(value *PodDNSConfigApplyConfiguration) *PodSpecApplyConfiguration {
|
|
b.DNSConfig = value
|
|
return b
|
|
}
|
|
|
|
// WithReadinessGates adds the given value to the ReadinessGates 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 ReadinessGates field.
|
|
func (b *PodSpecApplyConfiguration) WithReadinessGates(values ...*PodReadinessGateApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithReadinessGates")
|
|
}
|
|
b.ReadinessGates = append(b.ReadinessGates, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithRuntimeClassName sets the RuntimeClassName 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 RuntimeClassName field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithRuntimeClassName(value string) *PodSpecApplyConfiguration {
|
|
b.RuntimeClassName = &value
|
|
return b
|
|
}
|
|
|
|
// WithEnableServiceLinks sets the EnableServiceLinks 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 EnableServiceLinks field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithEnableServiceLinks(value bool) *PodSpecApplyConfiguration {
|
|
b.EnableServiceLinks = &value
|
|
return b
|
|
}
|
|
|
|
// WithPreemptionPolicy sets the PreemptionPolicy 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 PreemptionPolicy field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithPreemptionPolicy(value corev1.PreemptionPolicy) *PodSpecApplyConfiguration {
|
|
b.PreemptionPolicy = &value
|
|
return b
|
|
}
|
|
|
|
// WithOverhead sets the Overhead 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 Overhead field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithOverhead(value corev1.ResourceList) *PodSpecApplyConfiguration {
|
|
b.Overhead = &value
|
|
return b
|
|
}
|
|
|
|
// WithTopologySpreadConstraints adds the given value to the TopologySpreadConstraints 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 TopologySpreadConstraints field.
|
|
func (b *PodSpecApplyConfiguration) WithTopologySpreadConstraints(values ...*TopologySpreadConstraintApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithTopologySpreadConstraints")
|
|
}
|
|
b.TopologySpreadConstraints = append(b.TopologySpreadConstraints, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithSetHostnameAsFQDN sets the SetHostnameAsFQDN 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 SetHostnameAsFQDN field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithSetHostnameAsFQDN(value bool) *PodSpecApplyConfiguration {
|
|
b.SetHostnameAsFQDN = &value
|
|
return b
|
|
}
|
|
|
|
// WithOS sets the OS 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 OS field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithOS(value *PodOSApplyConfiguration) *PodSpecApplyConfiguration {
|
|
b.OS = value
|
|
return b
|
|
}
|
|
|
|
// WithHostUsers sets the HostUsers 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 HostUsers field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithHostUsers(value bool) *PodSpecApplyConfiguration {
|
|
b.HostUsers = &value
|
|
return b
|
|
}
|
|
|
|
// WithSchedulingGates adds the given value to the SchedulingGates 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 SchedulingGates field.
|
|
func (b *PodSpecApplyConfiguration) WithSchedulingGates(values ...*PodSchedulingGateApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithSchedulingGates")
|
|
}
|
|
b.SchedulingGates = append(b.SchedulingGates, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithResourceClaims adds the given value to the ResourceClaims 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 ResourceClaims field.
|
|
func (b *PodSpecApplyConfiguration) WithResourceClaims(values ...*PodResourceClaimApplyConfiguration) *PodSpecApplyConfiguration {
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithResourceClaims")
|
|
}
|
|
b.ResourceClaims = append(b.ResourceClaims, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithResources sets the Resources 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 Resources field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithResources(value *ResourceRequirementsApplyConfiguration) *PodSpecApplyConfiguration {
|
|
b.Resources = value
|
|
return b
|
|
}
|
|
|
|
// WithHostnameOverride sets the HostnameOverride 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 HostnameOverride field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithHostnameOverride(value string) *PodSpecApplyConfiguration {
|
|
b.HostnameOverride = &value
|
|
return b
|
|
}
|
|
|
|
// WithWorkloadRef sets the WorkloadRef 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 WorkloadRef field is set to the value of the last call.
|
|
func (b *PodSpecApplyConfiguration) WithWorkloadRef(value *WorkloadReferenceApplyConfiguration) *PodSpecApplyConfiguration {
|
|
b.WorkloadRef = value
|
|
return b
|
|
}
|