Documentation
¶
Overview ¶
Package resources contains a set of Kubernetes generic utilities that are used by the operator
Index ¶
- Constants
- func CreateIfNotFound[T client.Object](ctx context.Context, c client.Client, obj T) error
- func RetryAlways(err error) bool
- type PatchType
- type PersistentVolumeClaimBuilder
- func (b *PersistentVolumeClaimBuilder) BeginMetadata() *ResourceMetadataBuilder[*PersistentVolumeClaimBuilder]
- func (b *PersistentVolumeClaimBuilder) Build() *corev1.PersistentVolumeClaim
- func (b *PersistentVolumeClaimBuilder) WithAccessModes(accessModes ...corev1.PersistentVolumeAccessMode) *PersistentVolumeClaimBuilder
- func (b *PersistentVolumeClaimBuilder) WithRequests(rl corev1.ResourceList) *PersistentVolumeClaimBuilder
- func (b *PersistentVolumeClaimBuilder) WithSpec(spec *corev1.PersistentVolumeClaimSpec) *PersistentVolumeClaimBuilder
- func (b *PersistentVolumeClaimBuilder) WithStorageClass(storageClass *string) *PersistentVolumeClaimBuilder
- type Request
- type ResourceMetadataBuilder
- func (builder *ResourceMetadataBuilder[T]) EndMetadata() T
- func (builder *ResourceMetadataBuilder[T]) WithAnnotations(maps ...map[string]string) *ResourceMetadataBuilder[T]
- func (builder *ResourceMetadataBuilder[T]) WithClusterInheritance(cluster *apiv1.Cluster) *ResourceMetadataBuilder[T]
- func (builder *ResourceMetadataBuilder[T]) WithHash(hashValue string) *ResourceMetadataBuilder[T]
- func (builder *ResourceMetadataBuilder[T]) WithLabels(maps ...map[string]string) *ResourceMetadataBuilder[T]
- func (builder *ResourceMetadataBuilder[T]) WithNamespacedName(name, namespace string) *ResourceMetadataBuilder[T]
- func (builder *ResourceMetadataBuilder[T]) WithOwnership(controller metav1.ObjectMeta, controllerTypeMeta metav1.TypeMeta) *ResourceMetadataBuilder[T]
Constants ¶
const (
// AnnotationCNPGHash contains the hash of the used by CNPG expect the pooler that uses PgbouncerPoolerSpecHash
AnnotationCNPGHash = "cnpg.io/hash"
)
Variables ¶
This section is empty.
Functions ¶
func CreateIfNotFound ¶
CreateIfNotFound creates the given object if it doesn't already exist
func RetryAlways ¶ added in v1.17.3
RetryAlways is a function that always returns true on any error encountered
Types ¶
type PersistentVolumeClaimBuilder ¶ added in v1.17.4
type PersistentVolumeClaimBuilder struct {
// contains filtered or unexported fields
}
PersistentVolumeClaimBuilder creates a fluent abstraction to interact with the kubernetes resources
func NewPersistentVolumeClaimBuilder ¶ added in v1.17.4
func NewPersistentVolumeClaimBuilder() *PersistentVolumeClaimBuilder
NewPersistentVolumeClaimBuilder instantiates an empty PersistentVolumeClaimBuilder
func NewPersistentVolumeClaimBuilderFromPVC ¶ added in v1.17.4
func NewPersistentVolumeClaimBuilderFromPVC(pvc *corev1.PersistentVolumeClaim) *PersistentVolumeClaimBuilder
NewPersistentVolumeClaimBuilderFromPVC instantiates a builder with an existing object
func (*PersistentVolumeClaimBuilder) BeginMetadata ¶ added in v1.17.4
func (b *PersistentVolumeClaimBuilder) BeginMetadata() *ResourceMetadataBuilder[*PersistentVolumeClaimBuilder]
BeginMetadata gets the metadata builder
func (*PersistentVolumeClaimBuilder) Build ¶ added in v1.17.4
func (b *PersistentVolumeClaimBuilder) Build() *corev1.PersistentVolumeClaim
Build returns the underlying object
func (*PersistentVolumeClaimBuilder) WithAccessModes ¶ added in v1.17.4
func (b *PersistentVolumeClaimBuilder) WithAccessModes( accessModes ...corev1.PersistentVolumeAccessMode, ) *PersistentVolumeClaimBuilder
WithAccessModes adds the access modes to the object being build
func (*PersistentVolumeClaimBuilder) WithRequests ¶ added in v1.17.4
func (b *PersistentVolumeClaimBuilder) WithRequests(rl corev1.ResourceList) *PersistentVolumeClaimBuilder
WithRequests adds the requests to the object being build
func (*PersistentVolumeClaimBuilder) WithSpec ¶ added in v1.17.4
func (b *PersistentVolumeClaimBuilder) WithSpec(spec *corev1.PersistentVolumeClaimSpec) *PersistentVolumeClaimBuilder
WithSpec assigns the currently passed specs to the underlying object
func (*PersistentVolumeClaimBuilder) WithStorageClass ¶ added in v1.17.4
func (b *PersistentVolumeClaimBuilder) WithStorageClass(storageClass *string) *PersistentVolumeClaimBuilder
WithStorageClass adds the storageClass to the object being build
type Request ¶
Request is a client request that adheres to the client.Client interface
func NewRequest ¶
NewRequest instantiate a new request with the passed client
func (*Request[T]) CreateIfNotFound ¶
CreateIfNotFound will attempt to create the resource if it receives IsNotFound error
func (*Request[T]) PatchAlways ¶
PatchAlways will always try to attempt the patch of the retrieved resource with the proposed one
func (*Request[T]) WithCustomPatchConditions ¶
WithCustomPatchConditions will evaluate custom patch conditions
type ResourceMetadataBuilder ¶ added in v1.17.4
type ResourceMetadataBuilder[T any] struct { // contains filtered or unexported fields }
ResourceMetadataBuilder creates a fluent abstraction to interact with the kubernetes resources
func NewResourceMetadataBuilder ¶ added in v1.17.4
func NewResourceMetadataBuilder[T any](objectMeta *metav1.ObjectMeta, parentBuilder T) *ResourceMetadataBuilder[T]
NewResourceMetadataBuilder makes a ResourceMetadataBuilder starting from the object metadata
func (*ResourceMetadataBuilder[T]) EndMetadata ¶ added in v1.17.4
func (builder *ResourceMetadataBuilder[T]) EndMetadata() T
EndMetadata ends the metadata building framework
func (*ResourceMetadataBuilder[T]) WithAnnotations ¶ added in v1.17.4
func (builder *ResourceMetadataBuilder[T]) WithAnnotations(maps ...map[string]string) *ResourceMetadataBuilder[T]
WithAnnotations adds annotations to the resource being built
func (*ResourceMetadataBuilder[T]) WithClusterInheritance ¶ added in v1.17.4
func (builder *ResourceMetadataBuilder[T]) WithClusterInheritance(cluster *apiv1.Cluster) *ResourceMetadataBuilder[T]
WithClusterInheritance adds the cluster inherited data and ownership to the object
func (*ResourceMetadataBuilder[T]) WithHash ¶ added in v1.17.4
func (builder *ResourceMetadataBuilder[T]) WithHash(hashValue string) *ResourceMetadataBuilder[T]
WithHash adds the hash to the resource being built
func (*ResourceMetadataBuilder[T]) WithLabels ¶ added in v1.17.4
func (builder *ResourceMetadataBuilder[T]) WithLabels(maps ...map[string]string) *ResourceMetadataBuilder[T]
WithLabels adds labels to the resource being built
func (*ResourceMetadataBuilder[T]) WithNamespacedName ¶ added in v1.17.4
func (builder *ResourceMetadataBuilder[T]) WithNamespacedName(name, namespace string) *ResourceMetadataBuilder[T]
WithNamespacedName adds a namespace and a name to the resource being built
func (*ResourceMetadataBuilder[T]) WithOwnership ¶ added in v1.17.4
func (builder *ResourceMetadataBuilder[T]) WithOwnership( controller metav1.ObjectMeta, controllerTypeMeta metav1.TypeMeta, ) *ResourceMetadataBuilder[T]
WithOwnership adds ownership to the resource being built