From b97c4d157adfcbdaa0f7ede40bd68e54c0aaaef3 Mon Sep 17 00:00:00 2001 From: OpenGnSys Support Team Date: Tue, 12 Dec 2023 11:15:44 +0100 Subject: live: report image size when creating image add .size json field to report the real size of the image file. --- src/live/ogOperations.py | 9 +++++++++ src/ogRest.py | 1 + src/utils/legacy.py | 1 + 3 files changed, 11 insertions(+) (limited to 'src') diff --git a/src/live/ogOperations.py b/src/live/ogOperations.py index a8412c6..66f3024 100644 --- a/src/live/ogOperations.py +++ b/src/live/ogOperations.py @@ -478,6 +478,15 @@ class OgLiveOperations: logging.exception('Exception when running "image create" subprocess') raise ValueError('Error: Incorrect command value') + try: + stat = os.stat(image_path) + size = stat.st_size + except: + logging.info(f'cannot retrieve size from {image_path}') + size = 0 + + image_info.size = size + self._write_md5_file(f'/opt/opengnsys/images/{name}.img') self._restartBrowser(self._url) diff --git a/src/ogRest.py b/src/ogRest.py index 5a89d27..f567280 100644 --- a/src/ogRest.py +++ b/src/ogRest.py @@ -206,6 +206,7 @@ class ogThread(): json_body.add_element('compressor', image_info.compressor) json_body.add_element('filesystem', image_info.filesystem) json_body.add_element('datasize', datasize) + json_body.add_element('size', image_info.size) response = restResponse(ogResponses.OK, json_body, seq=client.seq) client.send(response.get()) diff --git a/src/utils/legacy.py b/src/utils/legacy.py index cfcec5e..6e907b4 100644 --- a/src/utils/legacy.py +++ b/src/utils/legacy.py @@ -25,6 +25,7 @@ class ImageInfo: def __init__(self, filesystem=None, datasize=None): self.filesystem = filesystem self.datasize = datasize + self.size = 0 self.clonator = 'PARTCLONE' self.compressor = 'LZOP' -- cgit v1.2.3-18-g5258