mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-11-10 08:20:23 +00:00
259 lines
12 KiB
Go
259 lines
12 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 v1alpha1
|
||
|
|
||
|
import (
|
||
|
resourcev1alpha1 "k8s.io/api/resource/v1alpha1"
|
||
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||
|
types "k8s.io/apimachinery/pkg/types"
|
||
|
managedfields "k8s.io/apimachinery/pkg/util/managedfields"
|
||
|
internal "k8s.io/client-go/applyconfigurations/internal"
|
||
|
v1 "k8s.io/client-go/applyconfigurations/meta/v1"
|
||
|
)
|
||
|
|
||
|
// PodSchedulingApplyConfiguration represents an declarative configuration of the PodScheduling type for use
|
||
|
// with apply.
|
||
|
type PodSchedulingApplyConfiguration struct {
|
||
|
v1.TypeMetaApplyConfiguration `json:",inline"`
|
||
|
*v1.ObjectMetaApplyConfiguration `json:"metadata,omitempty"`
|
||
|
Spec *PodSchedulingSpecApplyConfiguration `json:"spec,omitempty"`
|
||
|
Status *PodSchedulingStatusApplyConfiguration `json:"status,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PodScheduling constructs an declarative configuration of the PodScheduling type for use with
|
||
|
// apply.
|
||
|
func PodScheduling(name, namespace string) *PodSchedulingApplyConfiguration {
|
||
|
b := &PodSchedulingApplyConfiguration{}
|
||
|
b.WithName(name)
|
||
|
b.WithNamespace(namespace)
|
||
|
b.WithKind("PodScheduling")
|
||
|
b.WithAPIVersion("resource.k8s.io/v1alpha1")
|
||
|
return b
|
||
|
}
|
||
|
|
||
|
// ExtractPodScheduling extracts the applied configuration owned by fieldManager from
|
||
|
// podScheduling. If no managedFields are found in podScheduling for fieldManager, a
|
||
|
// PodSchedulingApplyConfiguration is returned with only the Name, Namespace (if applicable),
|
||
|
// APIVersion and Kind populated. It is possible that no managed fields were found for because other
|
||
|
// field managers have taken ownership of all the fields previously owned by fieldManager, or because
|
||
|
// the fieldManager never owned fields any fields.
|
||
|
// podScheduling must be a unmodified PodScheduling API object that was retrieved from the Kubernetes API.
|
||
|
// ExtractPodScheduling provides a way to perform a extract/modify-in-place/apply workflow.
|
||
|
// Note that an extracted apply configuration will contain fewer fields than what the fieldManager previously
|
||
|
// applied if another fieldManager has updated or force applied any of the previously applied fields.
|
||
|
// Experimental!
|
||
|
func ExtractPodScheduling(podScheduling *resourcev1alpha1.PodScheduling, fieldManager string) (*PodSchedulingApplyConfiguration, error) {
|
||
|
return extractPodScheduling(podScheduling, fieldManager, "")
|
||
|
}
|
||
|
|
||
|
// ExtractPodSchedulingStatus is the same as ExtractPodScheduling except
|
||
|
// that it extracts the status subresource applied configuration.
|
||
|
// Experimental!
|
||
|
func ExtractPodSchedulingStatus(podScheduling *resourcev1alpha1.PodScheduling, fieldManager string) (*PodSchedulingApplyConfiguration, error) {
|
||
|
return extractPodScheduling(podScheduling, fieldManager, "status")
|
||
|
}
|
||
|
|
||
|
func extractPodScheduling(podScheduling *resourcev1alpha1.PodScheduling, fieldManager string, subresource string) (*PodSchedulingApplyConfiguration, error) {
|
||
|
b := &PodSchedulingApplyConfiguration{}
|
||
|
err := managedfields.ExtractInto(podScheduling, internal.Parser().Type("io.k8s.api.resource.v1alpha1.PodScheduling"), fieldManager, b, subresource)
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
b.WithName(podScheduling.Name)
|
||
|
b.WithNamespace(podScheduling.Namespace)
|
||
|
|
||
|
b.WithKind("PodScheduling")
|
||
|
b.WithAPIVersion("resource.k8s.io/v1alpha1")
|
||
|
return b, nil
|
||
|
}
|
||
|
|
||
|
// WithKind sets the Kind 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 Kind field is set to the value of the last call.
|
||
|
func (b *PodSchedulingApplyConfiguration) WithKind(value string) *PodSchedulingApplyConfiguration {
|
||
|
b.Kind = &value
|
||
|
return b
|
||
|
}
|
||
|
|
||
|
// WithAPIVersion sets the APIVersion 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 APIVersion field is set to the value of the last call.
|
||
|
func (b *PodSchedulingApplyConfiguration) WithAPIVersion(value string) *PodSchedulingApplyConfiguration {
|
||
|
b.APIVersion = &value
|
||
|
return b
|
||
|
}
|
||
|
|
||
|
// 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 *PodSchedulingApplyConfiguration) WithName(value string) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithGenerateName(value string) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithNamespace(value string) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithUID(value types.UID) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithResourceVersion(value string) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithGeneration(value int64) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithCreationTimestamp(value metav1.Time) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithDeletionTimestamp(value metav1.Time) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithDeletionGracePeriodSeconds(value int64) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithLabels(entries map[string]string) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithAnnotations(entries map[string]string) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithOwnerReferences(values ...*v1.OwnerReferenceApplyConfiguration) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
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 *PodSchedulingApplyConfiguration) WithFinalizers(values ...string) *PodSchedulingApplyConfiguration {
|
||
|
b.ensureObjectMetaApplyConfigurationExists()
|
||
|
for i := range values {
|
||
|
b.Finalizers = append(b.Finalizers, values[i])
|
||
|
}
|
||
|
return b
|
||
|
}
|
||
|
|
||
|
func (b *PodSchedulingApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
|
||
|
if b.ObjectMetaApplyConfiguration == nil {
|
||
|
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// WithSpec sets the Spec 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 Spec field is set to the value of the last call.
|
||
|
func (b *PodSchedulingApplyConfiguration) WithSpec(value *PodSchedulingSpecApplyConfiguration) *PodSchedulingApplyConfiguration {
|
||
|
b.Spec = value
|
||
|
return b
|
||
|
}
|
||
|
|
||
|
// WithStatus sets the Status 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 Status field is set to the value of the last call.
|
||
|
func (b *PodSchedulingApplyConfiguration) WithStatus(value *PodSchedulingStatusApplyConfiguration) *PodSchedulingApplyConfiguration {
|
||
|
b.Status = value
|
||
|
return b
|
||
|
}
|