Skip to content

Commit dab0f9e

Browse files
committed
Update token refresh logging
Signed-off-by: Marek Aufart <[email protected]>
1 parent 4e32878 commit dab0f9e

File tree

3 files changed

+9
-10
lines changed

3 files changed

+9
-10
lines changed

binding/client.go

+7-6
Original file line numberDiff line numberDiff line change
@@ -681,13 +681,14 @@ func (r *Client) send(rb func() (*http.Request, error)) (response *http.Response
681681
err = liberr.Wrap(err)
682682
return
683683
}
684-
} else if r.refreshToken(response.StatusCode) {
684+
} else if r.refreshToken(response.StatusCode, request.URL.Path) {
685685
unAuthErr := errors.New("401 Unauthorized")
686686
if i < r.Retry {
687+
Log.Info("|401| Unauthorized, refreshing auth token.")
687688
token := api.Login{Refresh: r.token.Refresh}
688-
refreshErr := r.Post(api.AuthRefreshRoot, &token) // calls itself.. ensure no deadlock/stacktoodeep
689+
refreshErr := r.Post(api.AuthRefreshRoot, &token)
689690
if refreshErr != nil {
690-
Log.Error(err, "Token refresh failed.")
691+
Log.Error(refreshErr, "Token refresh failed.")
691692
time.Sleep(RetryDelay)
692693
} else {
693694
r.SetToken(token)
@@ -816,9 +817,9 @@ func (f *Field) disposition() (d string) {
816817
return
817818
}
818819

819-
func (r *Client) refreshToken(status int) (refresh bool) {
820-
if status == 401 && r.token.Refresh != "" {
820+
func (r *Client) refreshToken(status int, path string) (refresh bool) {
821+
if status == 401 && !strings.HasSuffix(path, api.AuthRefreshRoot) && r.token.Refresh != "" {
821822
refresh = true
822823
}
823824
return
824-
}
825+
}

binding/richclient.go

-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
package binding
22

33
import (
4-
"time"
5-
64
"github.com/jortel/go-utils/logr"
75
"github.com/konveyor/tackle2-hub/api"
86
"github.com/konveyor/tackle2-hub/settings"

test/api/client/client.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ func PrepareRichClient() (richClient *binding.RichClient) {
2727
panic(fmt.Sprintf("Cannot login to API: %v.", err.Error()))
2828
}
2929

30-
// Disable HTTP requests retry for network-related errors to fail quickly.
31-
richClient.Client.Retry = 1
30+
// Disable HTTP requests retry for network-related errors to fail quickly.
31+
richClient.Client.Retry = 1
3232

3333
return
3434
}

0 commit comments

Comments
 (0)