package v1

import "k8s.io/client-go/applyconfigurations/coordination/v1"

Index

Types

type LeaseApplyConfiguration

type LeaseApplyConfiguration struct {
	metav1.TypeMetaApplyConfiguration `json:",inline"`
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	*metav1.ObjectMetaApplyConfiguration `json:"metadata,omitempty"`
	// spec contains the specification of the Lease.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
	Spec *LeaseSpecApplyConfiguration `json:"spec,omitempty"`
}

LeaseApplyConfiguration represents a declarative configuration of the Lease type for use with apply.

Lease defines a lease concept.

func ExtractLease

func ExtractLease(lease *coordinationv1.Lease, fieldManager string) (*LeaseApplyConfiguration, error)

ExtractLease extracts the applied configuration owned by fieldManager from lease. If no managedFields are found in lease for fieldManager, a LeaseApplyConfiguration 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. lease must be a unmodified Lease API object that was retrieved from the Kubernetes API. ExtractLease 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.

func ExtractLeaseFrom

func ExtractLeaseFrom(lease *coordinationv1.Lease, fieldManager string, subresource string) (*LeaseApplyConfiguration, error)

ExtractLeaseFrom extracts the applied configuration owned by fieldManager from lease for the specified subresource. Pass an empty string for subresource to extract the main resource. Common subresources include "status", "scale", etc. lease must be a unmodified Lease API object that was retrieved from the Kubernetes API. ExtractLeaseFrom 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.

func Lease

func Lease(name, namespace string) *LeaseApplyConfiguration

Lease constructs a declarative configuration of the Lease type for use with apply.

func (*LeaseApplyConfiguration) GetAPIVersion

func (b *LeaseApplyConfiguration) GetAPIVersion() *string

GetAPIVersion retrieves the value of the APIVersion field in the declarative configuration.

func (*LeaseApplyConfiguration) GetKind

func (b *LeaseApplyConfiguration) GetKind() *string

GetKind retrieves the value of the Kind field in the declarative configuration.

func (*LeaseApplyConfiguration) GetName

func (b *LeaseApplyConfiguration) GetName() *string

GetName retrieves the value of the Name field in the declarative configuration.

func (*LeaseApplyConfiguration) GetNamespace

func (b *LeaseApplyConfiguration) GetNamespace() *string

GetNamespace retrieves the value of the Namespace field in the declarative configuration.

func (LeaseApplyConfiguration) IsApplyConfiguration

func (b LeaseApplyConfiguration) IsApplyConfiguration()

func (*LeaseApplyConfiguration) WithAPIVersion

func (b *LeaseApplyConfiguration) WithAPIVersion(value string) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithAnnotations

func (b *LeaseApplyConfiguration) WithAnnotations(entries map[string]string) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithCreationTimestamp

func (b *LeaseApplyConfiguration) WithCreationTimestamp(value apismetav1.Time) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithDeletionGracePeriodSeconds

func (b *LeaseApplyConfiguration) WithDeletionGracePeriodSeconds(value int64) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithDeletionTimestamp

func (b *LeaseApplyConfiguration) WithDeletionTimestamp(value apismetav1.Time) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithFinalizers

func (b *LeaseApplyConfiguration) WithFinalizers(values ...string) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithGenerateName

func (b *LeaseApplyConfiguration) WithGenerateName(value string) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithGeneration

func (b *LeaseApplyConfiguration) WithGeneration(value int64) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithKind

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 (*LeaseApplyConfiguration) WithLabels

func (b *LeaseApplyConfiguration) WithLabels(entries map[string]string) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithName

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 (*LeaseApplyConfiguration) WithNamespace

func (b *LeaseApplyConfiguration) WithNamespace(value string) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithOwnerReferences

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 (*LeaseApplyConfiguration) WithResourceVersion

func (b *LeaseApplyConfiguration) WithResourceVersion(value string) *LeaseApplyConfiguration

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 (*LeaseApplyConfiguration) WithSpec

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 (*LeaseApplyConfiguration) WithUID

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.

type LeaseSpecApplyConfiguration

type LeaseSpecApplyConfiguration struct {
	// holderIdentity contains the identity of the holder of a current lease.
	// If Coordinated Leader Election is used, the holder identity must be
	// equal to the elected LeaseCandidate.metadata.name field.
	HolderIdentity *string `json:"holderIdentity,omitempty"`
	// leaseDurationSeconds is a duration that candidates for a lease need
	// to wait to force acquire it. This is measured against the time of last
	// observed renewTime.
	LeaseDurationSeconds *int32 `json:"leaseDurationSeconds,omitempty"`
	// acquireTime is a time when the current lease was acquired.
	AcquireTime *metav1.MicroTime `json:"acquireTime,omitempty"`
	// renewTime is a time when the current holder of a lease has last
	// updated the lease.
	RenewTime *metav1.MicroTime `json:"renewTime,omitempty"`
	// leaseTransitions is the number of transitions of a lease between
	// holders.
	LeaseTransitions *int32 `json:"leaseTransitions,omitempty"`
	// Strategy indicates the strategy for picking the leader for coordinated leader election.
	// If the field is not specified, there is no active coordination for this lease.
	// (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
	Strategy *coordinationv1.CoordinatedLeaseStrategy `json:"strategy,omitempty"`
	// PreferredHolder signals to a lease holder that the lease has a
	// more optimal holder and should be given up.
	// This field can only be set if Strategy is also set.
	PreferredHolder *string `json:"preferredHolder,omitempty"`
}

LeaseSpecApplyConfiguration represents a declarative configuration of the LeaseSpec type for use with apply.

LeaseSpec is a specification of a Lease.

func LeaseSpec

func LeaseSpec() *LeaseSpecApplyConfiguration

LeaseSpecApplyConfiguration constructs a declarative configuration of the LeaseSpec type for use with apply.

func (*LeaseSpecApplyConfiguration) WithAcquireTime

WithAcquireTime sets the AcquireTime 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 AcquireTime field is set to the value of the last call.

func (*LeaseSpecApplyConfiguration) WithHolderIdentity

func (b *LeaseSpecApplyConfiguration) WithHolderIdentity(value string) *LeaseSpecApplyConfiguration

WithHolderIdentity sets the HolderIdentity 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 HolderIdentity field is set to the value of the last call.

func (*LeaseSpecApplyConfiguration) WithLeaseDurationSeconds

func (b *LeaseSpecApplyConfiguration) WithLeaseDurationSeconds(value int32) *LeaseSpecApplyConfiguration

WithLeaseDurationSeconds sets the LeaseDurationSeconds 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 LeaseDurationSeconds field is set to the value of the last call.

func (*LeaseSpecApplyConfiguration) WithLeaseTransitions

func (b *LeaseSpecApplyConfiguration) WithLeaseTransitions(value int32) *LeaseSpecApplyConfiguration

WithLeaseTransitions sets the LeaseTransitions 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 LeaseTransitions field is set to the value of the last call.

func (*LeaseSpecApplyConfiguration) WithPreferredHolder

func (b *LeaseSpecApplyConfiguration) WithPreferredHolder(value string) *LeaseSpecApplyConfiguration

WithPreferredHolder sets the PreferredHolder 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 PreferredHolder field is set to the value of the last call.

func (*LeaseSpecApplyConfiguration) WithRenewTime

WithRenewTime sets the RenewTime 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 RenewTime field is set to the value of the last call.

func (*LeaseSpecApplyConfiguration) WithStrategy

WithStrategy sets the Strategy 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 Strategy field is set to the value of the last call.

Source Files

lease.go leasespec.go

Version
v0.35.0-alpha.3
Published
Nov 5, 2025
Platform
linux/amd64
Imports
6 packages
Last checked
13 minutes ago

Tools for package owners.