Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConfigMapLocker ¶
type ConfigMapLocker struct {
ConfigMapName, Namespace string
Locker lockgate.Locker
// contains filtered or unexported fields
}
func NewConfigMapLocker ¶
func NewConfigMapLocker( configMapName, namespace string, locker lockgate.Locker, options ConfigMapLockerOptions, ) *ConfigMapLocker
func (*ConfigMapLocker) Acquire ¶
func (locker *ConfigMapLocker) Acquire(lockName string, opts lockgate.AcquireOptions) ( bool, lockgate.LockHandle, error, )
func (*ConfigMapLocker) Release ¶
func (locker *ConfigMapLocker) Release(lock lockgate.LockHandle) error
type ConfigMapLockerOptions ¶
type ConfigMapLockerOptions struct { CreateNamespace bool KubeClient kubernetes.Interface }
type LockManager ¶
type LockManager struct { Namespace string LockerWithRetry *locker_with_retry.LockerWithRetry }
NOTE: LockManager for not is not multithreaded due to the lack of support of contexts in the lockgate library
func NewLockManager ¶
func NewLockManager( namespace string, createNamespace bool, kubeClient kubernetes.Interface, dynamicKubeClient dynamic.Interface, ) (*LockManager, error)
func (*LockManager) LockRelease ¶
func (lockManager *LockManager) LockRelease( ctx context.Context, releaseName string, ) (lockgate.LockHandle, error)
func (*LockManager) Unlock ¶
func (lockManager *LockManager) Unlock(handle lockgate.LockHandle) error
Click to show internal directories.
Click to hide internal directories.