diff --git a/rwm.py b/rwm.py index c09d42dedbfcf68baa64aeb0b5841c75db11e672..5d67d652343238cb7196bdec9ec850c685095e93 100755 --- a/rwm.py +++ b/rwm.py @@ -342,7 +342,7 @@ class RWM: return self.restic_cmd(cmd_args) - def backup(self, name) -> subprocess.CompletedProcess: + def backup(self, name) -> int: """backup command""" if not self.storage_manager.storage_check_policy(self.config["rwm_restic_bucket"]): @@ -351,14 +351,14 @@ class RWM: wrap_output(backup_proc := self._restic_backup(name)) if backup_proc.returncode != 0: logger.error("rwm _restic_backup failed") - return backup_proc + return 1 wrap_output(forget_proc := self._restic_forget_prune()) if forget_proc.returncode != 0: logger.error("rwm _restic_forget_prune failed") - return forget_proc + return 1 - return backup_proc + return 0 def backup_all(self) -> int: """backup all command""" @@ -514,7 +514,7 @@ def main(argv=None): # pylint: disable=too-many-branches ret = wrap_output(rwmi.restic_cmd(args.cmd_args)) if args.command == "backup": - ret = rwmi.backup(args.name).returncode + ret = rwmi.backup(args.name) logger.info("rwm backup finished with %s (ret %d)", "success" if ret == 0 else "errors", ret) if args.command == "backup_all": ret = rwmi.backup_all() diff --git a/tests/test_default.py b/tests/test_default.py index 3917374bec28eef9b465727d57d9d9977ce2be36..2386f8ded3788e1bff852e45b16ea8514f1ec07c 100644 --- a/tests/test_default.py +++ b/tests/test_default.py @@ -39,7 +39,7 @@ def test_main(tmpworkdir: str): # pylint: disable=unused-argument with patch.object(rwm.RWM, "restic_cmd", mock_proc): assert rwm_main(["restic", "dummy"]) == 0 - with patch.object(rwm.RWM, "backup", mock_proc): + with patch.object(rwm.RWM, "backup", mock_ok): assert rwm_main(["backup", "dummy"]) == 0 with patch.object(rwm.RWM, "backup_all", mock_ok): assert rwm_main(["backup_all"]) == 0 diff --git a/tests/test_rwm.py b/tests/test_rwm.py index 7af5d0804d37d2a3e03c29ae03043e62121bd7bf..2fe9e53e599f645210ffd21f202888bd5269d70a 100644 --- a/tests/test_rwm.py +++ b/tests/test_rwm.py @@ -80,7 +80,7 @@ def test_backup(tmpworkdir: str, motoserver: str): # pylint: disable=unused-arg Path("testdatadir/testfile_to_be_ignored").write_text("dummydata", encoding="utf-8") assert trwm.restic_cmd(["init"]).returncode == 0 - assert trwm.backup("testcfg").returncode == 0 + assert trwm.backup("testcfg") == 0 snapshots = _restic_list_snapshots(trwm) assert len(snapshots) == 1 @@ -118,7 +118,7 @@ def test_backup_excludes(tmpworkdir: str, motoserver: str): # pylint: disable=u Path("testdatadir/var/proc/data").write_text("dummydata", encoding="utf-8") assert trwm.restic_cmd(["init"]).returncode == 0 - assert trwm.backup("testcfg").returncode == 0 + assert trwm.backup("testcfg") == 0 snapshots = _restic_list_snapshots(trwm) assert len(snapshots) == 1 @@ -140,19 +140,19 @@ def test_backup_error_handling(tmpworkdir: str, motoserver: str): # pylint: dis "dummycfg": {"filesdirs": ["dummydir"]} } } - mock_ok = Mock(return_value=CompletedProcess(args='dummy', returncode=0)) - mock_fail = Mock(return_value=CompletedProcess(args='dummy', returncode=11)) + mock_proc_ok = Mock(return_value=CompletedProcess(args='dummy', returncode=0)) + mock_proc_fail = Mock(return_value=CompletedProcess(args='dummy', returncode=2)) with ( - patch.object(rwm.RWM, "_restic_backup", mock_fail) + patch.object(rwm.RWM, "_restic_backup", mock_proc_fail) ): - assert rwm.RWM(rwm_conf).backup("dummycfg").returncode == 11 + assert rwm.RWM(rwm_conf).backup("dummycfg") == 1 with ( - patch.object(rwm.RWM, "_restic_backup", mock_ok), - patch.object(rwm.RWM, "_restic_forget_prune", mock_fail) + patch.object(rwm.RWM, "_restic_backup", mock_proc_ok), + patch.object(rwm.RWM, "_restic_forget_prune", mock_proc_fail) ): - assert rwm.RWM(rwm_conf).backup("dummycfg").returncode == 11 + assert rwm.RWM(rwm_conf).backup("dummycfg") == 1 def test_backup_all(tmpworkdir: str): # pylint: disable=unused-argument @@ -163,11 +163,11 @@ def test_backup_all(tmpworkdir: str): # pylint: disable=unused-argument "dummycfg": {"filesdirs": ["dummydir"]} } } - mock = Mock(return_value=CompletedProcess(args='dummy', returncode=0)) + mock_proc_ok = Mock(return_value=CompletedProcess(args='dummy', returncode=0)) with ( - patch.object(rwm.RWM, "_restic_backup", mock), - patch.object(rwm.RWM, "_restic_forget_prune", mock) + patch.object(rwm.RWM, "_restic_backup", mock_proc_ok), + patch.object(rwm.RWM, "_restic_forget_prune", mock_proc_ok), ): assert rwm.RWM(rwm_conf).backup_all() == 0 @@ -209,7 +209,7 @@ def test_storage_delete(tmpworkdir: str, microceph: str, radosuser_admin: rwm.St bucket = trwm.storage_manager.storage_create(bucket_name, "admin") assert len(trwm.storage_manager.list_objects(bucket_name)) == 0 assert trwm.restic_cmd(["init"]).returncode == 0 - assert trwm.backup("testcfg").returncode == 0 + assert trwm.backup("testcfg") == 0 assert len(trwm.storage_manager.list_objects(bucket_name)) != 0 object_versions = radosuser_admin.s3.meta.client.list_object_versions(Bucket=bucket.name) diff --git a/tests/test_storage.py b/tests/test_storage.py index d70caa92dfd53eae4b92153f4982af431507dea2..cdc4f009c5ebbbd4072e97d61f38a6bc72985ec9 100644 --- a/tests/test_storage.py +++ b/tests/test_storage.py @@ -138,7 +138,7 @@ def test_storage_backup_usage( } }) assert trwm.restic_cmd(["init"]).returncode == 0 - assert trwm.backup("dummy").returncode == 0 + assert trwm.backup("dummy") == 0 assert radosuser_test1.list_objects(bucket_name) assert len(json.loads(trwm.restic_cmd(["snapshots", "--json"]).stdout)) == 1