diff --git a/zfs_autobackup/ZfsAutobackup.py b/zfs_autobackup/ZfsAutobackup.py index 963f554..f12ff9f 100644 --- a/zfs_autobackup/ZfsAutobackup.py +++ b/zfs_autobackup/ZfsAutobackup.py @@ -537,7 +537,8 @@ def cli(): signal(SIGPIPE, sigpipe_handler) - sys.exit(ZfsAutobackup(sys.argv[1:], False).run()) + failed_datasets=ZfsAutobackup(sys.argv[1:], False).run() + sys.exit(min(failed_datasets, 255)) if __name__ == "__main__": diff --git a/zfs_autobackup/ZfsAutoverify.py b/zfs_autobackup/ZfsAutoverify.py index 2c2f9b4..dece15a 100644 --- a/zfs_autobackup/ZfsAutoverify.py +++ b/zfs_autobackup/ZfsAutoverify.py @@ -306,8 +306,8 @@ def cli(): import sys signal(SIGPIPE, sigpipe_handler) - - sys.exit(ZfsAutoverify(sys.argv[1:], False).run()) + failed = ZfsAutoverify(sys.argv[1:], False).run() + sys.exit(min(failed,255)) if __name__ == "__main__": diff --git a/zfs_autobackup/ZfsCheck.py b/zfs_autobackup/ZfsCheck.py index c4d6f1c..eae7b9a 100644 --- a/zfs_autobackup/ZfsCheck.py +++ b/zfs_autobackup/ZfsCheck.py @@ -302,8 +302,8 @@ class ZfsCheck(CliBase): def cli(): import sys signal(SIGPIPE, sigpipe_handler) - - sys.exit(ZfsCheck(sys.argv[1:], False).run()) + failed=ZfsCheck(sys.argv[1:], False).run() + sys.exit(min(failed,255)) if __name__ == "__main__":