File tree Expand file tree Collapse file tree 1 file changed +22
-5
lines changed
services/director/src/simcore_service_director Expand file tree Collapse file tree 1 file changed +22
-5
lines changed Original file line number Diff line number Diff line change @@ -413,12 +413,29 @@ async def get_image_labels(
413413 media_type
414414 == "application/vnd.docker.distribution.manifest.list.v2+json"
415415 ):
416- raise DockerRegistryUnsupportedManifestSchemaVersionError (
417- version = schema_version ,
418- service_name = image ,
419- service_tag = tag ,
420- reason = "Multiple architectures images are currently not supported and need to be implemented" ,
416+ # default to x86_64 architecture
417+ _logger .info (
418+ "Image %s:%s is a docker image with multiple architectures. "
419+ "Currently defaulting to x86_64 architecture" ,
420+ image ,
421+ tag ,
421422 )
423+ manifests = request_result .get ("manifests" , [])
424+ if not manifests :
425+ raise DockerRegistryUnsupportedManifestSchemaVersionError (
426+ version = schema_version ,
427+ service_name = image ,
428+ service_tag = tag ,
429+ reason = "Manifest list is empty" ,
430+ )
431+ first_manifest_digest = manifests [0 ]["digest" ]
432+ request_result , _ = await registry_request (
433+ app ,
434+ path = f"{ image } /manifests/{ first_manifest_digest } " ,
435+ method = "GET" ,
436+ use_cache = not update_cache ,
437+ )
438+
422439 config_digest = request_result ["config" ]["digest" ]
423440 # Fetch the config blob
424441 config_result , _ = await registry_request (
You can’t perform that action at this time.
0 commit comments