diff --git a/circle/storage/models.py b/circle/storage/models.py index f01f6f4..2e246f4 100644 --- a/circle/storage/models.py +++ b/circle/storage/models.py @@ -360,13 +360,14 @@ class Disk(AclBase, TimeStampedModel): queue=queue_name) while True: try: - size = remote.get(timeout=5) + result = remote.get(timeout=5) break except TimeoutError: if task is not None and task.is_aborted(): AbortableAsyncResult(remote.id).abort() raise Exception("Download aborted by user.") - disk.size = size + disk.size = result['size'] + disk.type = result['type'] disk.is_ready = True disk.save() return disk diff --git a/circle/vm/operations.py b/circle/vm/operations.py index 90094de..6930f53 100644 --- a/circle/vm/operations.py +++ b/circle/vm/operations.py @@ -137,7 +137,8 @@ class DownloadDiskOperation(InstanceOperation): if self.instance.status not in ['STOPPED', 'PENDING']: raise self.instance.WrongStateError(self.instance) - def _operation(self, user, url, task, name=None): + def _operation(self, user, url, task, activity, name=None): + activity.result = url # TODO implement with hot-attach when it'll be available from storage.models import Disk