Add a __main__ handler, version command

Recently I've been querying what versions of openstacksdk are
installed in various environments, it would be handy to have a quick
way to see what's installed.  This adds a __main__ handler and a
single command "version" to print the full version (with git
reference).

Change-Id: I690f2987740c804735879985d19752c31490c7c9
This commit is contained in:
Ian Wienand 2018-11-07 16:04:05 +11:00
parent 46ca87b8e8
commit e0b417623d
3 changed files with 48 additions and 0 deletions

View File

@ -13,6 +13,10 @@ The OpenStack SDK is available on
$ pip install openstacksdk
To check the installed version you can call the module with ::
$ python -m openstack version
.. _user_guides:
User Guides

40
openstack/__main__.py Normal file
View File

@ -0,0 +1,40 @@
# Copyright (c) 2018 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import argparse
import sys
import pbr.version
def show_version(args):
print("OpenstackSDK Version %s" %
pbr.version.VersionInfo('openstacksdk').version_string_with_vcs())
parser = argparse.ArgumentParser(description="Openstack SDK")
subparsers = parser.add_subparsers(title='commands',
dest='command')
cmd_version = subparsers.add_parser('version',
help='show Openstack SDK version')
cmd_version.set_defaults(func=show_version)
args = parser.parse_args()
if not args.command:
parser.print_help()
sys.exit(1)
args.func(args)

View File

@ -0,0 +1,4 @@
---
features:
- The installed version can now be quickly checked with ``python -m
openstack version``.