lock

package
v0.92.0 Latest Latest
Warning

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

Go to latest
Published: Jun 13, 2026 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LockStack added in v0.89.2

func LockStack(stackName string)

LockStack acquires the per-stack scheduler/deployment lock for stackName. While held, scheduled runs and deployments for this specific stack are mutually exclusive. Different stacks do not block each other. If stackName is empty the call is a no-op.

func UnlockStack added in v0.89.2

func UnlockStack(stackName string)

UnlockStack releases the per-stack scheduler/deployment lock for stackName. If stackName is empty the call is a no-op.

Types

type RepoLock

type RepoLock struct {
	// contains filtered or unexported fields
}

RepoLock represents a lock for a specific repository.

func GetRepoLock

func GetRepoLock(repoName string) *RepoLock

GetRepoLock retrieves or creates a RepoLock for the given repoName.

func (*RepoLock) Holder

func (l *RepoLock) Holder() string

Holder returns the jobID of the current lock holder.

func (*RepoLock) Lock

func (l *RepoLock) Lock()

Lock acquires the lock, blocking until it is available.

func (*RepoLock) TryLock

func (l *RepoLock) TryLock(jobID string) bool

TryLock attempts to acquire the lock for the given jobID. It returns true if the lock was successfully acquired.

func (*RepoLock) Unlock

func (l *RepoLock) Unlock()

Unlock releases the lock.

Jump to

Keyboard shortcuts

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