Browse Source

check retry for authorization error

Jeffrey Morgan 1 year ago
parent
commit
02524a56ff
1 changed files with 8 additions and 1 deletions
  1. 8 1
      server/images.go

+ 8 - 1
server/images.go

@@ -1131,6 +1131,7 @@ func makeRequestWithRetry(ctx context.Context, method string, requestURL *url.UR
 		if !errors.Is(err, context.Canceled) {
 		if !errors.Is(err, context.Canceled) {
 			log.Printf("request failed: %v", err)
 			log.Printf("request failed: %v", err)
 		}
 		}
+
 		return nil, err
 		return nil, err
 	}
 	}
 
 
@@ -1150,7 +1151,13 @@ func makeRequestWithRetry(ctx context.Context, method string, requestURL *url.UR
 				return nil, err
 				return nil, err
 			}
 			}
 		}
 		}
-		return makeRequest(ctx, method, requestURL, headers, body, regOpts)
+
+		resp, err := makeRequest(ctx, method, requestURL, headers, body, regOpts)
+		if resp.StatusCode == http.StatusUnauthorized {
+			return nil, errUnauthorized
+		}
+
+		return resp, err
 	case resp.StatusCode == http.StatusNotFound:
 	case resp.StatusCode == http.StatusNotFound:
 		return nil, os.ErrNotExist
 		return nil, os.ErrNotExist
 	case resp.StatusCode >= http.StatusBadRequest:
 	case resp.StatusCode >= http.StatusBadRequest: