Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion controllers/telemetry/logpipeline_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,6 @@ func configureFluentBitReconciler(config LogPipelineControllerConfig, client cli
logpipelinefluentbit.WithEndpointValidator(&endpoint.Validator{Client: client}),
logpipelinefluentbit.WithTLSCertValidator(tlscert.New(client)),
logpipelinefluentbit.WithSecretRefValidator(&secretref.Validator{Client: client}),
logpipelinefluentbit.WithValidatorPipelineLock(pipelineLock),
)

fluentBitApplierDeleter := fluentbit.NewFluentBitApplierDeleter(
Expand Down
6 changes: 6 additions & 0 deletions internal/reconciler/logpipeline/fluentbit/interfaces.go
Original file line number Diff line number Diff line change
Expand Up @@ -114,4 +114,10 @@ type PipelineLock interface {
// Returns nil if the owner holds a lock, or an error if it does not.
// This is used to determine if a pipeline is already registered and active.
IsLockHolder(ctx context.Context, owner metav1.Object) error

// GetLockHolders retrieves the list of current lock holders and populates the provided list.
// The list is a Kubernetes ObjectList that will be filled with the owners holding locks.
// Returns an error if the lock holders cannot be retrieved.
GetLockHolders(ctx context.Context, list client.ObjectList) error
ReleaseLockIfHeld(ctx context.Context, owner metav1.Object) error
}
115 changes: 115 additions & 0 deletions internal/reconciler/logpipeline/fluentbit/mocks/pipeline_lock.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading