customresource

package
v2.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 8, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ResourcePolicyAnnotation       = "mongodb.com/atlas-resource-policy"
	ReconciliationPolicyAnnotation = "mongodb.com/atlas-reconciliation-policy"
	ResourceVersion                = "mongodb.com/atlas-resource-version"
	ResourceVersionOverride        = "mongodb.com/atlas-resource-version-policy"
	ResourcePolicyKeep             = "keep"
	ResourcePolicyDelete           = "delete"
	ReconciliationPolicySkip       = "skip"
	ResourceVersionAllow           = "allow"
)
View Source
const (
	AnnotationLastAppliedConfiguration = "mongodb.com/last-applied-configuration"
)
View Source
const FinalizerLabel = "mongodbatlas/finalizer"

Variables

This section is empty.

Functions

func ApplyLastConfigApplied

func ApplyLastConfigApplied(ctx context.Context, resource akov2.AtlasCustomResource, k8sClient client.Client) error

func HaveFinalizer

func HaveFinalizer(resource akov2.AtlasCustomResource, finalizer string) bool

func IsOwner

func IsOwner(resource akov2.AtlasCustomResource, protectionFlag bool, operatorChecker OperatorChecker, atlasChecker AtlasChecker) (bool, error)

func IsResourceManagedByOperator

func IsResourceManagedByOperator(resource akov2.AtlasCustomResource) (bool, error)

func IsResourcePolicyKeep added in v2.1.0

func IsResourcePolicyKeep(resource akov2.AtlasCustomResource) bool

IsResourcePolicyKeep returns 'true' if the resource should not be removed from Atlas on K8s resource removal.

func IsResourcePolicyKeepOrDefault added in v2.1.0

func IsResourcePolicyKeepOrDefault(resource akov2.AtlasCustomResource, protectionFlag bool) bool

func ManageFinalizer

func ManageFinalizer(
	ctx context.Context,
	c client.Client,
	resource akov2.AtlasCustomResource,
	op FinalizerOperator,
) error

func MarkReconciliationStarted

func MarkReconciliationStarted(client client.Client, resource akov2.AtlasCustomResource, log *zap.SugaredLogger, context context.Context) *workflow.Context

MarkReconciliationStarted updates the status of the Atlas Resource to indicate that the Operator has started working on it. Internally this will also update the 'observedGeneration' field that notify clients that the resource is being worked on

func PrepareResource

func PrepareResource(ctx context.Context, client client.Client, request reconcile.Request, resource akov2.AtlasCustomResource, log *zap.SugaredLogger) workflow.Result

PrepareResource queries the Custom Resource 'request.NamespacedName' and populates the 'resource' pointer.

func ReconciliationShouldBeSkipped

func ReconciliationShouldBeSkipped(resource akov2.AtlasCustomResource) bool

ReconciliationShouldBeSkipped returns 'true' if reconciliation should be skipped for this resource.

func ResourceVersionIsValid

func ResourceVersionIsValid(resource akov2.AtlasCustomResource) (bool, error)

ResourceVersionIsValid returns 'true' if current version of resource is <= current version of the operator.

func SetAnnotation

func SetAnnotation(resource akov2.AtlasCustomResource, key, value string)

SetAnnotation sets an annotation in resource while respecting the rest of annotations.

func SetFinalizer

func SetFinalizer(resource akov2.AtlasCustomResource, finalizer string)

SetFinalizer Add the given finalizer to the list of resource finalizer

func UnsetFinalizer

func UnsetFinalizer(resource akov2.AtlasCustomResource, finalizer string)

UnsetFinalizer remove the given finalizer from the list of resource finalizer

func ValidateResourceVersion

func ValidateResourceVersion(ctx *workflow.Context, resource akov2.AtlasCustomResource, log *zap.SugaredLogger) workflow.Result

Types

type AtlasChecker

type AtlasChecker func(resource akov2.AtlasCustomResource) (bool, error)

type FinalizerOperator

type FinalizerOperator func(resource akov2.AtlasCustomResource, finalizer string)

type OperatorChecker

type OperatorChecker func(resource akov2.AtlasCustomResource) (bool, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL