github.com/argoproj/argo-cd/v3@v3.2.1/controller/syncid/id.go (about) 1 package syncid 2 3 import ( 4 "fmt" 5 "sync/atomic" 6 7 "github.com/argoproj/argo-cd/v3/util/rand" 8 ) 9 10 var globalCount = &atomic.Uint64{} 11 12 // Generate generates a new ID 13 func Generate() (string, error) { 14 randSuffix, err := rand.String(5) 15 if err != nil { 16 return "", fmt.Errorf("failed to generate random suffix: %w", err) 17 } 18 prefix := globalCount.Add(1) 19 return fmt.Sprintf("%05d-%s", prefix, randSuffix), nil 20 }