diff --git a/scripts/upgrade_oniro/upgrade_oniro.py b/scripts/upgrade_oniro/upgrade_oniro.py
index e47406576f67ec2fba1189e5531e9d6f4ba59e14..02809f89e5b8f2b7b3d4f4d9e4f1053e9e31ed70 100644
--- a/scripts/upgrade_oniro/upgrade_oniro.py
+++ b/scripts/upgrade_oniro/upgrade_oniro.py
@@ -56,6 +56,7 @@ flavour = ""
 image = ""
 conf_directory = pathlib.Path()
 dry_run = False
+store_backup = False
 
 def init_script_options():
     parser = argparse.ArgumentParser(description=script_description)
@@ -79,10 +80,12 @@ def init_script_options():
                         help="Path to the config directory you want to use. If omitted the default configs will be use.")
     parser.add_argument("--dry-run", action="store_true",
                         help="Perform the upgrade on a local copy of the project.")
+    parser.add_argument("--store-backup", action="store_true",
+                        help="Store the backup even if the upgrade was successful.")
     
 
     parsed_args = vars(parser.parse_args())
-    global target_version, build_directory, machine, flavour, image, conf_directory, dry_run
+    global target_version, build_directory, machine, flavour, image, conf_directory, dry_run, store_backup
     target_version = parsed_args["target-version"]
     build_directory = parsed_args["build-directory"]
     machine = parsed_args["machine"]
@@ -90,6 +93,7 @@ def init_script_options():
     image = parsed_args["image"]
     conf_directory = parsed_args["conf_directory"]
     dry_run = parsed_args["dry_run"]
+    store_backup = parsed_args["store_backup"]
 
 def upgrade_tool():
     # TODO