From 7d6a3914c82d8d3fea8fa502923b1460571c97a4 Mon Sep 17 00:00:00 2001 From: andig Date: Thu, 27 Jul 2023 20:10:39 +0200 Subject: [PATCH] chore: fix token refresh --- util/oauth/helper.go | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/util/oauth/helper.go b/util/oauth/helper.go index 15e16909c..253350974 100644 --- a/util/oauth/helper.go +++ b/util/oauth/helper.go @@ -15,26 +15,26 @@ func Refresh(log *util.Logger, token *oauth2.Token, ts oauth2.TokenSource, optMa limitTokenLife(token, optMaxTokenLifetime...) for range time.Tick(5 * time.Minute) { - if _, err := ts.Token(); err != nil { - t, err := ts.Token() - if err != nil { - failed++ - if failed > 5 { - log.ERROR.Printf("token refresh: %v, giving up", err) - return - } - - log.ERROR.Printf("token refresh: %v", err) - continue + // get token- either previous or new + t, err := ts.Token() + if err != nil { + // error means refresh failed + failed++ + if failed > 5 { + log.ERROR.Printf("token refresh: %v, giving up", err) + return } - failed = 0 + log.ERROR.Printf("token refresh: %v", err) + continue + } - // limit lifetime of new tokens - if t.Expiry != token.Expiry { - token = t - limitTokenLife(token, optMaxTokenLifetime...) - } + failed = 0 + + // limit lifetime of new tokens + if t.Expiry != token.Expiry { + token = t + limitTokenLife(token, optMaxTokenLifetime...) } } }