TokenCleaner#evalSecret should enqueue the key

This commit is contained in:
Ted Yu 2019-09-19 10:34:59 -07:00
parent 2183a84feb
commit 1269b9e474
2 changed files with 9 additions and 3 deletions

View File

@ -202,6 +202,11 @@ func (tc *TokenCleaner) evalSecret(o interface{}) {
klog.V(3).Infof("Error deleting Secret: %v", err) klog.V(3).Infof("Error deleting Secret: %v", err)
} }
} else if ttl > 0 { } else if ttl > 0 {
tc.queue.AddAfter(o, ttl) key, err := controller.KeyFunc(o)
if err != nil {
utilruntime.HandleError(err)
return
}
tc.queue.AddAfter(key, ttl)
} }
} }

View File

@ -110,10 +110,11 @@ func TestCleanerExpiredAt(t *testing.T) {
secret := newTokenSecret("tokenID", "tokenSecret") secret := newTokenSecret("tokenID", "tokenSecret")
addSecretExpiration(secret, timeString(2*time.Second)) addSecretExpiration(secret, timeString(2*time.Second))
secrets.Informer().GetIndexer().Add(secret)
cleaner.enqueueSecrets(secret)
expected := []core.Action{} expected := []core.Action{}
verifyFunc := func() { verifyFunc := func() {
secrets.Informer().GetIndexer().Add(secret) cleaner.processNextWorkItem()
cleaner.evalSecret(secret)
verifyActions(t, expected, cl.Actions()) verifyActions(t, expected, cl.Actions())
} }
// token has not expired currently // token has not expired currently