prow/plugins/config.go
func warnDeprecated(last *time.Time, freq time.Duration, msg string) {
	// have we warned within the last freq?
	warnLock.RLock()
	fresh := time.Now().Sub(*last) <= freq
	warnLock.RUnlock()
	if fresh { // we've warned recently
		return
	}
	// Warning is stale, will we win the race to warn?
	warnLock.Lock()
	defer warnLock.Unlock()
	now := time.Now()           // Recalculate now, we might wait awhile for the lock
	if now.Sub(*last) <= freq { // Nope, we lost
		return
	}
	*last = now
	logrus.Warn(msg)
}
func warnDeprecated(last *time.Time, freq time.Duration, msg string) {
	// have we warned within the last freq?
	warnLock.RLock()
	fresh := time.Now().Sub(*last) <= freq
	warnLock.RUnlock()
	if fresh { // we've warned recently
		return
	}
	// Warning is stale, will we win the race to warn?
	warnLock.Lock()
	defer warnLock.Unlock()
	now := time.Now()           // Recalculate now, we might wait awhile for the lock
	if now.Sub(*last) <= freq { // Nope, we lost
		return
	}
	*last = now
	logrus.Warn(msg)
}
func warnDeprecated ( last * time . Time , freq time . Duration , msg string ) { // have we warned within the last freq? warnLock . RLock ( ) fresh := time . Now ( ) . Sub ( * last ) <= freq warnLock . RUnlock ( ) if fresh { // we've warned recently return } // Warning is stale, will we win the race to warn? warnLock . Lock ( ) defer warnLock . Unlock ( ) now := time . Now ( ) // Recalculate now, we might wait awhile for the lock if now . Sub ( * last ) <= freq { // Nope, we lost return } * last = now logrus . Warn ( msg ) }
// warnDeprecated prints a deprecation warning for a particular configuration
// option.
warnDeprecated prints a deprecation warning for a particular configuration option .