Add an additional short circuit to avoid parsing the manifest when not necessary for older Docker clients
We also add tests for this case
This commit is contained in:
parent
7f068c3fc3
commit
e78b5c5516
3 changed files with 36 additions and 4 deletions
|
@ -208,7 +208,7 @@ class V2Protocol(RegistryProtocol):
|
|||
|
||||
headers = {
|
||||
'Authorization': 'Bearer ' + token,
|
||||
'Accept': ','.join(options.accept_mimetypes) if options.accept_mimetypes else '*/*',
|
||||
'Accept': ','.join(options.accept_mimetypes) if options.accept_mimetypes is not None else '*/*',
|
||||
}
|
||||
|
||||
# Push all blobs.
|
||||
|
@ -340,7 +340,7 @@ class V2Protocol(RegistryProtocol):
|
|||
|
||||
headers = {
|
||||
'Authorization': 'Bearer ' + token,
|
||||
'Accept': ','.join(options.accept_mimetypes) if options.accept_mimetypes else '*/*',
|
||||
'Accept': ','.join(options.accept_mimetypes) if options.accept_mimetypes is not None else '*/*',
|
||||
}
|
||||
|
||||
# Build fake manifests.
|
||||
|
@ -530,7 +530,9 @@ class V2Protocol(RegistryProtocol):
|
|||
}
|
||||
|
||||
if self.schema2:
|
||||
headers['Accept'] = ','.join(options.accept_mimetypes or DOCKER_SCHEMA2_CONTENT_TYPES)
|
||||
headers['Accept'] = ','.join(options.accept_mimetypes
|
||||
if options.accept_mimetypes is not None
|
||||
else DOCKER_SCHEMA2_CONTENT_TYPES)
|
||||
|
||||
manifests = {}
|
||||
image_ids = {}
|
||||
|
|
Reference in a new issue