From 478257a259b3817a1364d183963b773691b8ea49 Mon Sep 17 00:00:00 2001 From: Johan Euphrosine Date: Thu, 26 Feb 2015 13:30:48 -0800 Subject: [PATCH] contrib/podex: add http status code handling --- contrib/podex/podex.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/contrib/podex/podex.go b/contrib/podex/podex.go index 82f9e51cda6..ce270c24942 100644 --- a/contrib/podex/podex.go +++ b/contrib/podex/podex.go @@ -262,8 +262,12 @@ func getImageMetadata(host, namespace, repo, tag string) (*imageMetadata, error) req.Header.Add("X-Docker-Token", "true") resp, err := http.DefaultClient.Do(req) if err != nil { - return nil, fmt.Errorf("error getting X-Docker-Token from index.docker.io: %v", err) + return nil, fmt.Errorf("error making request to %q: %v", host, err) } + if resp.StatusCode != 200 { + return nil, fmt.Errorf("error getting X-Docker-Token from %s: %q", host, resp.Status) + } + endpoints := resp.Header.Get("X-Docker-Endpoints") token := resp.Header.Get("X-Docker-Token") req, err = http.NewRequest("GET", fmt.Sprintf("https://%s/v1/repositories/%s/%s/tags/%s", endpoints, namespace, repo, tag), nil)