Catch exceptions if trying to build an invalid manifest in the manifest backfill code
This commit is contained in:
parent
154c17bd3c
commit
3c526c957a
1 changed files with 13 additions and 1 deletions
|
@ -434,12 +434,24 @@ class SharedModel:
|
|||
|
||||
# Add the leaf layer
|
||||
builder.add_layer(legacy_image_row.storage.content_checksum, legacy_image_row.v1_json_metadata)
|
||||
if legacy_image_row.storage.uploading:
|
||||
logger.error('Cannot add an uploading storage row: %s', legacy_image_row.storage.id)
|
||||
return None
|
||||
|
||||
for parent_image in parents:
|
||||
if parent_image.storage.uploading:
|
||||
logger.error('Cannot add an uploading storage row: %s', legacy_image_row.storage.id)
|
||||
return None
|
||||
|
||||
builder.add_layer(parent_image.storage.content_checksum, parent_image.v1_json_metadata)
|
||||
|
||||
# Sign the manifest with our signing key.
|
||||
return builder.build(docker_v2_signing_key)
|
||||
try:
|
||||
return builder.build(docker_v2_signing_key)
|
||||
except ManifestException as me:
|
||||
logger.exception('Got exception when trying to build manifest for legacy image %s',
|
||||
legacy_image_row)
|
||||
return None
|
||||
|
||||
def _get_shared_storage(self, blob_digest):
|
||||
""" Returns an ImageStorage row for the blob digest if it is a globally shared storage. """
|
||||
|
|
Reference in a new issue