Address torrent feature review comments.

This commit is contained in:
Jake Moshenko 2016-01-08 16:38:02 -05:00
parent 8a924aae4a
commit 1ae101c917
7 changed files with 31 additions and 29 deletions

View file

@ -6,8 +6,7 @@ from data.model import (config, db_transaction, InvalidImageException, TorrentIn
DataModelException, _basequery)
from data.database import (ImageStorage, Image, ImageStoragePlacement, ImageStorageLocation,
ImageStorageTransformation, ImageStorageSignature,
ImageStorageSignatureKind, Repository, Namespace, TorrentInfo,
db_for_update)
ImageStorageSignatureKind, Repository, Namespace, TorrentInfo)
logger = logging.getLogger(__name__)
@ -213,17 +212,16 @@ def set_image_storage_metadata(docker_image_id, namespace_name, repository_name,
if image_size is None:
raise DataModelException('Empty image size field')
query = (Image
.select(Image, ImageStorage)
.join(Repository)
.join(Namespace, on=(Repository.namespace_user == Namespace.id))
.switch(Image)
.join(ImageStorage)
.where(Repository.name == repository_name, Namespace.username == namespace_name,
Image.docker_image_id == docker_image_id))
try:
image = db_for_update(query).get()
image = (Image
.select(Image, ImageStorage)
.join(Repository)
.join(Namespace, on=(Repository.namespace_user == Namespace.id))
.switch(Image)
.join(ImageStorage)
.where(Repository.name == repository_name, Namespace.username == namespace_name,
Image.docker_image_id == docker_image_id)
.get())
except ImageStorage.DoesNotExist:
raise InvalidImageException('No image with specified id and repository')
@ -257,8 +255,7 @@ def get_torrent_info(blob):
try:
return (TorrentInfo
.select()
.join(ImageStorage)
.where(blob.id == ImageStorage.id)
.where(blob == TorrentInfo.storage)
.get())
except TorrentInfo.DoesNotExist:
raise TorrentInfoDoesNotExist