Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-pages.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaime Martinez <jmartinez@gitlab.com>2022-04-08 04:03:59 +0300
committerJaime Martinez <jmartinez@gitlab.com>2022-04-08 04:12:11 +0300
commit4b70ccd75479dea8cf14a755e3a2ecba7797a449 (patch)
treebbc0aaa1112156e77829945516e814b118ebad35 /internal/auth/auth.go
parent4b1afecbb6ae1886bfd3a31f256909ca2770bce4 (diff)
fix: handle context canceled gracefully for auth and artifacts
Changelog: changed
Diffstat (limited to 'internal/auth/auth.go')
-rw-r--r--internal/auth/auth.go9
1 files changed, 9 insertions, 0 deletions
diff --git a/internal/auth/auth.go b/internal/auth/auth.go
index 21398e56..681e3199 100644
--- a/internal/auth/auth.go
+++ b/internal/auth/auth.go
@@ -359,6 +359,10 @@ func (a *Auth) fetchAccessToken(ctx context.Context, code string) (tokenResponse
// Request token
resp, err := a.apiClient.Do(req)
if err != nil {
+ if errors.Is(err, context.Canceled) {
+ return token, nil
+ }
+
return token, err
}
@@ -476,6 +480,11 @@ func (a *Auth) checkAuthentication(w http.ResponseWriter, r *http.Request, domai
req.Header.Add("Authorization", "Bearer "+session.Values["access_token"].(string))
resp, err := a.apiClient.Do(req)
if err != nil {
+ if errors.Is(err, context.Canceled) {
+ httperrors.Serve404(w)
+ return true
+ }
+
logRequest(r).WithError(err).Error("Failed to retrieve info with token")
errortracking.CaptureErrWithReqAndStackTrace(err, r)
// call serve404 handler when auth fails