reg icon indicating copy to clipboard operation
reg copied to clipboard

behavior of ping is against Docker v2 API Spec

Open jabielecki opened this issue 6 years ago • 2 comments

Per Docker v2 API Specification:

When a 200 OK or 401 Unauthorized response is returned, the “Docker-Distribution-API-Version” header should be set to “registry/2.0”. Clients may require this header value to determine if the endpoint serves this API.

So the implicit assumption is that if you only want to ping, the 401 is as good a response as 200.

However, currently reg regards 401 as a ping error.

reg version
reg:
 version     : 
 git hash    : 
 go version  : go1.13.4
 go compiler : gc
 platform    : linux/amd64


reg tags quay.io/kubernetes-ingress-controller/nginx-ingress-controller
INFO[0000] domain: quay.io                              
INFO[0000] server address: quay.io                      
Get https://quay.io/v2/: http: non-successful response (status=401 body="{\"error\": \"Invalid bearer token format\"}")


reg tags --skip-ping quay.io/kubernetes-ingress-controller/nginx-ingress-controller
INFO[0000] domain: quay.io                              
INFO[0000] server address: quay.io                      
0
0.10.0
0.10.1

Impact: when using quay.io registry (and also azure cloud registry and other less popular ones) every user needs to wildly troubleshoot until they discover they need --skip-ping option. That's confusing.

jabielecki avatar Nov 16 '19 19:11 jabielecki

Issue Label Bot is not confident enough to auto-label this issue. See dashboard for more details.

issue-label-bot[bot] avatar Nov 16 '19 19:11 issue-label-bot[bot]