From a1fd31ab08d34858174944ff97c8bb52797a6712 Mon Sep 17 00:00:00 2001
From: Davide Gardenal <davide.gardenal@huawei.com>
Date: Thu, 28 Jul 2022 12:40:24 +0200
Subject: [PATCH] upgrade_oniro: add error handling for restore

Add error handling for restore in case the backup is not found.

Signed-off-by: Davide Gardenal <davide.gardenal@huawei.com>
---
 scripts/upgrade_oniro/upgrade_oniro.py | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/scripts/upgrade_oniro/upgrade_oniro.py b/scripts/upgrade_oniro/upgrade_oniro.py
index ed330c6d..03400a18 100644
--- a/scripts/upgrade_oniro/upgrade_oniro.py
+++ b/scripts/upgrade_oniro/upgrade_oniro.py
@@ -185,11 +185,16 @@ def restore_oniro():
 
     if backup_archive_arg == "latest":
         backup_archive_name = find_latest_backup()
-
-    if os.path.exists(backup_archive_arg):
+        if backup_archive_name is None:
+            print("No backup found, aborting...")
+            return
+    elif os.path.exists(backup_archive_arg):
         # TODO add a check to be sure that the selected path is actually a Oniro backup
         backup_archive_name = backup_archive_arg
-    
+    else:
+        print(f"'{backup_archive_arg}' has not been found, aborting...")
+        return
+
     print(f"Restoring {backup_archive_name}")
     with tarfile.open(backup_archive_name) as backup_archive:
         # Extract the metadata file and delete all the old folders
-- 
GitLab