summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOpenGnSys Support Team <soporte-og@soleta.eu>2024-06-27 11:40:37 +0200
committerOpenGnSys Support Team <soporte-og@soleta.eu>2024-06-27 11:46:30 +0200
commita9d8cdd210234b2d295c7a3e342cf2bd3f48f45f (patch)
tree028f4d67338662eab8241a917d84fbfe2715df7e
parent6282cb41a8d3dac4995432baee1e25056a30909b (diff)
live: revisit error log when failing to validate checksum
Add explicit check for .full.sum after downloading it. Rewrite errors log, one of them is misleading when checksum validation fails, it refers to missing .full.sum, but it could be a different reason.
-rw-r--r--src/live/ogOperations.py2
-rw-r--r--src/utils/tiptorrent.py5
2 files changed, 5 insertions, 2 deletions
diff --git a/src/live/ogOperations.py b/src/live/ogOperations.py
index d0129e8..7d0d832 100644
--- a/src/live/ogOperations.py
+++ b/src/live/ogOperations.py
@@ -219,7 +219,7 @@ class OgLiveOperations:
if (not os.path.exists(image_path)):
raise OgError(f'could not find {image_path} in cache')
if (not tip_check_csum(repo, name)):
- raise OgError(f'checksum file {name}.img.full.sum is missing in repository {repo}')
+ raise OgError(f'Failed to validate checksum for {name}.img')
self._restore_image(image_path, devpath)
diff --git a/src/utils/tiptorrent.py b/src/utils/tiptorrent.py
index d3e95f4..8fc1631 100644
--- a/src/utils/tiptorrent.py
+++ b/src/utils/tiptorrent.py
@@ -67,11 +67,14 @@ def tip_check_csum(tip_addr, image_name):
logging.info(f'Verifying checksum for {image_name}.img, please wait...')
image_path = f'{OG_CACHE_IMAGE_PATH}{image_name}.img'
if not os.path.exists(image_path):
- raise OgError(f'Invalid image path {image_path} for tiptorrent image csum comparison')
+ raise OgError(f'File {image_path} does not exist')
cache_csum = _compute_md5(image_path)
remote_csum = tip_fetch_csum(tip_addr, image_name)
+ if not os.path.exists(f"{image_path}.full.sum"):
+ raise OgError(f'File {image_path}.full.sum does not exist in repository {tip_addr}')
+
if cache_csum == remote_csum:
ret = True
logging.info(f'Checksum is OK for {image_name}.img')