Add an orphans lookup script
This commit is contained in:
parent
6070c251ae
commit
3002371f5a
1 changed files with 13 additions and 20 deletions
|
@ -1,22 +1,15 @@
|
||||||
from data.database import Image
|
from data.database import Image, ImageStorage
|
||||||
from app import app, storage as store
|
from peewee import JOIN_LEFT_OUTER, fn
|
||||||
|
from app import app
|
||||||
|
|
||||||
live_image_id_set = set()
|
orphaned = (ImageStorage
|
||||||
|
.select()
|
||||||
|
.where(ImageStorage.uploading == False)
|
||||||
|
.join(Image, JOIN_LEFT_OUTER)
|
||||||
|
.group_by(ImageStorage)
|
||||||
|
.having(fn.Count(Image.id) == 0))
|
||||||
|
|
||||||
for image in Image.select():
|
counter = 0
|
||||||
live_image_id_set.add(image.docker_image_id)
|
for orphan in orphaned:
|
||||||
|
counter += 1
|
||||||
storage_image_id_set = set()
|
print orphan.uuid
|
||||||
for customer in store.list_directory('images/'):
|
|
||||||
for repo in store.list_directory(customer):
|
|
||||||
for image in store.list_directory(repo):
|
|
||||||
storage_image_id_set.add(image.split('/')[-1])
|
|
||||||
|
|
||||||
orphans = storage_image_id_set.difference(live_image_id_set)
|
|
||||||
missing_image_data = live_image_id_set.difference(storage_image_id_set)
|
|
||||||
|
|
||||||
for orphan in orphans:
|
|
||||||
print "Orphan: %s" % orphan
|
|
||||||
|
|
||||||
for missing in missing_image_data:
|
|
||||||
print "Missing: %s" % missing
|
|
||||||
|
|
Reference in a new issue