diff options
author | Daniil Baturin <daniil@vyos.io> | 2024-04-22 18:14:22 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-22 18:14:22 +0200 |
commit | 5ebcbddb0842c570284cd17553395fcc2e2edad0 (patch) | |
tree | 96362f60bf3f1d247156fe32ad2086a592ed25de | |
parent | b5d3d36d1f70e53ef6a8a6634ab863d94d791bf2 (diff) | |
parent | 31b21d26751b7db7ab784486da5b8690ddd4a058 (diff) | |
download | vyos-1x-5ebcbddb0842c570284cd17553395fcc2e2edad0.tar.gz vyos-1x-5ebcbddb0842c570284cd17553395fcc2e2edad0.zip |
Merge pull request #3336 from c-po/t6244-seconds_to_human
vyos.utils: T6244: add whitespace after time unit in uptime
-rw-r--r-- | python/vyos/utils/convert.py | 23 | ||||
-rwxr-xr-x | src/op_mode/uptime.py | 2 |
2 files changed, 15 insertions, 10 deletions
diff --git a/python/vyos/utils/convert.py b/python/vyos/utils/convert.py index c02f0071e..41e65081f 100644 --- a/python/vyos/utils/convert.py +++ b/python/vyos/utils/convert.py @@ -1,4 +1,4 @@ -# Copyright 2023 VyOS maintainers and contributors <maintainers@vyos.io> +# Copyright 2023-2024 VyOS maintainers and contributors <maintainers@vyos.io> # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -19,38 +19,43 @@ def seconds_to_human(s, separator=""): """ s = int(s) + year = 60 * 60 * 24 * 365.25 week = 60 * 60 * 24 * 7 day = 60 * 60 * 24 hour = 60 * 60 - remainder = 0 - result = "" + result = [] + + years = s // year + if years > 0: + result.append(f'{int(years)}y') + s = int(s % year) weeks = s // week if weeks > 0: - result = "{0}w".format(weeks) + result.append(f'{weeks}w') s = s % week days = s // day if days > 0: - result = "{0}{1}{2}d".format(result, separator, days) + result.append(f'{days}d') s = s % day hours = s // hour if hours > 0: - result = "{0}{1}{2}h".format(result, separator, hours) + result.append(f'{hours}h') s = s % hour minutes = s // 60 if minutes > 0: - result = "{0}{1}{2}m".format(result, separator, minutes) + result.append(f'{minutes}m') s = s % 60 seconds = s if seconds > 0: - result = "{0}{1}{2}s".format(result, separator, seconds) + result.append(f'{seconds}s') - return result + return separator.join(result) def bytes_to_human(bytes, initial_exponent=0, precision=2, int_below_exponent=0): diff --git a/src/op_mode/uptime.py b/src/op_mode/uptime.py index d6adf6f4d..059a4c3f6 100755 --- a/src/op_mode/uptime.py +++ b/src/op_mode/uptime.py @@ -49,7 +49,7 @@ def _get_raw_data(): res = {} res["uptime_seconds"] = _get_uptime_seconds() - res["uptime"] = seconds_to_human(_get_uptime_seconds()) + res["uptime"] = seconds_to_human(_get_uptime_seconds(), separator=' ') res["load_average"] = _get_load_averages() return res |