Nmstatectl: Add --version and version subcommand

Signed-off-by: IsmayilMirzali <ismayilmirzeli@gmail.com>
This commit is contained in:
IsmayilMirzali 2020-03-11 13:31:15 +02:00 committed by Till Maas
parent eede270898
commit 4d05b7ee88
2 changed files with 34 additions and 1 deletions

View File

@ -51,12 +51,19 @@ def main():
setup_subcommand_rollback(subparsers)
setup_subcommand_set(subparsers)
setup_subcommand_show(subparsers)
setup_subcommand_version(subparsers)
parser.add_argument(
"--version", action="store_true", help="Display nmstate version"
)
if len(sys.argv) == 1:
parser.print_usage()
return errno.EINVAL
args = parser.parse_args()
return args.func(args)
if args.version:
print(libnmstate.__version__)
else:
return args.func(args)
def setup_subcommand_commit(subparsers):
@ -157,6 +164,17 @@ def setup_subcommand_show(subparsers):
)
def setup_subcommand_version(subparsers):
parser_version = subparsers.add_parser(
"version", help="Display nmstate version"
)
parser_version.set_defaults(func=version)
def version(args):
print(libnmstate.__version__)
def commit(args):
try:
libnmstate.commit(checkpoint=args.checkpoint)

View File

@ -22,6 +22,7 @@ import os
import time
from libnmstate import __version__
from libnmstate.schema import Constants
from .testlib import assertlib
@ -206,6 +207,20 @@ def test_automatic_rollback(eth1_up):
assertlib.assert_state(clean_state)
def test_version_argument():
ret = cmdlib.exec_cmd(("nmstatectl", "--version"))
rc, out, _ = ret
assert rc == cmdlib.RC_SUCCESS, cmdlib.format_exec_cmd_result(ret)
assert out.rstrip() == __version__
def test_version_command():
ret = cmdlib.exec_cmd(("nmstatectl", "version"))
rc, out, _ = ret
assert rc == cmdlib.RC_SUCCESS, cmdlib.format_exec_cmd_result(ret)
assert out.rstrip() == __version__
def assert_command(cmd, expected_rc=cmdlib.RC_SUCCESS):
ret = cmdlib.exec_cmd(cmd)
returncode = ret[0]