Volans has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/374132 )
Change subject: CLI: fix --version option
......................................................................
CLI: fix --version option
Change-Id: Iadf1a08d3dd955141cb0847fd58a9f1ffcc9a175
---
M cumin/cli.py
M cumin/tests/integration/test_cli.py
2 files changed, 16 insertions(+), 6 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/software/cumin
refs/changes/32/374132/1
diff --git a/cumin/cli.py b/cumin/cli.py
index 9c236dd..755607b 100644
--- a/cumin/cli.py
+++ b/cumin/cli.py
@@ -110,7 +110,7 @@
'[optional]'))
parser.add_argument('--dry-run', action='store_true',
help='Do not execute any command, just return the list
of matching hosts and exit.')
- parser.add_argument('--version', action='store_true', help='Print current
version and exit.')
+ parser.add_argument('--version', action='version', version='%(prog)s
{version}'.format(version=cumin.__version__))
parser.add_argument('-d', '--debug', action='store_true', help='Set log
level to DEBUG.')
parser.add_argument('--trace', action='store_true',
help='Set log level to TRACE, a custom logging level
intended for development debugging.')
@@ -353,10 +353,6 @@
# Setup
try:
args = parse_args(argv)
- if args.version:
- tqdm.write('cumin {version}'.format(version=cumin.__version__))
- return 0
-
user = get_running_user()
config = cumin.Config(args.config)
setup_logging(config['log_file'], debug=args.debug, trace=args.trace)
diff --git a/cumin/tests/integration/test_cli.py
b/cumin/tests/integration/test_cli.py
index d2c0e84..3ae90cd 100644
--- a/cumin/tests/integration/test_cli.py
+++ b/cumin/tests/integration/test_cli.py
@@ -9,7 +9,7 @@
import pytest
-from cumin import cli
+from cumin import __version__, cli
# Set environment variables
_ENV = {'USER': 'root', 'SUDO_USER': 'user'}
@@ -376,3 +376,17 @@
assert _EXPECTED_LINES['all_failure'] in err,
_EXPECTED_LINES['all_failure']
assert _EXPECTED_LINES['failed'] not in err, _EXPECTED_LINES['failed']
assert rc == 2
+
+ def test_version(self, capsys): # pylint: disable=no-self-use
+ """Calling --version should return the version and exit."""
+ with pytest.raises(SystemExit) as e:
+ cli.main(argv=['--version'])
+
+ out, err = capsys.readouterr()
+ sys.stdout.write(out)
+ sys.stderr.write(err)
+ assert e.type == SystemExit
+ assert e.value.code == 0
+ assert out == ''
+ assert len(err.splitlines()) == 1
+ assert __version__ in err
--
To view, visit https://gerrit.wikimedia.org/r/374132
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iadf1a08d3dd955141cb0847fd58a9f1ffcc9a175
Gerrit-PatchSet: 1
Gerrit-Project: operations/software/cumin
Gerrit-Branch: master
Gerrit-Owner: Volans <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits