Make sure to delete the image placements in the manifest builder cleanup code
This commit is contained in:
parent
f2a351183a
commit
4a22a52aee
2 changed files with 8 additions and 1 deletions
|
@ -7,7 +7,7 @@ from collections import namedtuple
|
|||
from flask import session
|
||||
|
||||
from data import model
|
||||
from data.database import db_transaction, ImageStorage
|
||||
from data.database import db_transaction, ImageStorage, ImageStoragePlacement
|
||||
from data.registry_model import registry_model
|
||||
from image.docker.schema2 import EMPTY_LAYER_BLOB_DIGEST
|
||||
|
||||
|
@ -203,6 +203,10 @@ class _ManifestBuilder(object):
|
|||
try:
|
||||
storage = ImageStorage.get(id=storage_id)
|
||||
if storage.uploading and storage.content_checksum != EMPTY_LAYER_BLOB_DIGEST:
|
||||
# Delete all the placements pointing to the storage.
|
||||
ImageStoragePlacement.delete().where(ImageStoragePlacement.storage == storage).execute()
|
||||
|
||||
# Delete the storage.
|
||||
storage.delete_instance()
|
||||
except ImageStorage.DoesNotExist:
|
||||
pass
|
||||
|
|
Reference in a new issue