From d747f77f80fb48a30f14f4875d30e95366819111 Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Thu, 28 Jan 2021 21:32:48 -0500 Subject: [PATCH] upgrades: Get result of start-dist-upgrade Signed-off-by: James Valleroy Reviewed-by: Veiko Aasa --- actions/upgrades | 8 +++++++- plinth/modules/upgrades/__init__.py | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/actions/upgrades b/actions/upgrades index 2957b4dcc..a0121127a 100755 --- a/actions/upgrades +++ b/actions/upgrades @@ -5,6 +5,7 @@ Configures or runs unattended-upgrades """ import argparse +import json import logging import os import pathlib @@ -478,7 +479,6 @@ def subcommand_start_dist_upgrade(arguments): if updates are enabled. """ upgrade_ready, reason = _check_dist_upgrade(arguments.test) - print(reason) if upgrade_ready: with open(DIST_UPGRADE_SERVICE_PATH, 'w') as service_file: service_file.write(DIST_UPGRADE_SERVICE) @@ -489,6 +489,12 @@ def subcommand_start_dist_upgrade(arguments): stderr=subprocess.DEVNULL, close_fds=True, start_new_session=True) + print( + json.dumps({ + 'dist_upgrade_started': upgrade_ready, + 'reason': reason, + })) + def subcommand_dist_upgrade(_): """Perform major distribution upgrade. diff --git a/plinth/modules/upgrades/__init__.py b/plinth/modules/upgrades/__init__.py index 981f6c688..9618f72b9 100644 --- a/plinth/modules/upgrades/__init__.py +++ b/plinth/modules/upgrades/__init__.py @@ -3,6 +3,7 @@ FreedomBox app for upgrades. """ +import json import logging import os import subprocess @@ -178,7 +179,12 @@ def setup_repositories(data): actions.superuser_run('upgrades', command) if is_dist_upgrade_enabled(): - actions.superuser_run('upgrades', ['start-dist-upgrade']) + output = actions.superuser_run('upgrades', ['start-dist-upgrade']) + result = json.loads(output) + dist_upgrade_started = result['dist_upgrade_started'] + reason = result['reason'] + logger.info('Result of start-dist-upgrade: %s, %s', + dist_upgrade_started, reason) def is_backports_requested():