From e20ff231587e9d3985602cf8df755e3f24459cda Mon Sep 17 00:00:00 2001 From: Christian Berendt Date: Tue, 13 Nov 2012 11:59:17 +0100 Subject: [PATCH] added --version as new parameter fixes bug 1056504 Change-Id: Ib28e3941006b46553001d7895d5ddf4b0f9c540d --- glanceclient/__init__.py | 21 +++++++++++++++++++-- glanceclient/shell.py | 4 ++++ glanceclient/version.py | 21 --------------------- setup.py | 1 + 4 files changed, 24 insertions(+), 23 deletions(-) delete mode 100644 glanceclient/version.py diff --git a/glanceclient/__init__.py b/glanceclient/__init__.py index d71b8a7d..3d49db7f 100644 --- a/glanceclient/__init__.py +++ b/glanceclient/__init__.py @@ -23,6 +23,23 @@ except ImportError: import warnings warnings.warn("Could not import glanceclient.client", ImportWarning) -import glanceclient.version +import os +import inspect -__version__ = glanceclient.version.version_info.deferred_version_string() + +def _get_client_version(): + """Read version from versioninfo file.""" + mod_abspath = inspect.getabsfile(inspect.currentframe()) + client_path = os.path.dirname(mod_abspath) + version_path = os.path.join(client_path, 'versioninfo') + + if os.path.exists(version_path): + version = open(version_path).read().strip() + else: + version = "Unknown, couldn't find versioninfo file at %s"\ + % version_path + + return version + + +__version__ = _get_client_version() diff --git a/glanceclient/shell.py b/glanceclient/shell.py index 2dd473e4..99991ebc 100644 --- a/glanceclient/shell.py +++ b/glanceclient/shell.py @@ -47,6 +47,10 @@ class OpenStackImagesShell(object): help=argparse.SUPPRESS, ) + parser.add_argument('--version', + action='version', + version=glanceclient.__version__) + parser.add_argument('-d', '--debug', default=bool(utils.env('GLANCECLIENT_DEBUG')), action='store_true', diff --git a/glanceclient/version.py b/glanceclient/version.py deleted file mode 100644 index 7d0a408f..00000000 --- a/glanceclient/version.py +++ /dev/null @@ -1,21 +0,0 @@ -# vim: tabstop=4 shiftwidth=4 softtabstop=4 - -# Copyright 2012 OpenStack LLC -# -# 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. - - -from glanceclient.openstack.common import version as common_version - -version_info = common_version.VersionInfo('glanceclient', - python_package='python-glanceclient') diff --git a/setup.py b/setup.py index 07f6aac2..b7e99ff0 100644 --- a/setup.py +++ b/setup.py @@ -45,4 +45,5 @@ setuptools.setup( setup_requires=['setuptools-git>=0.4'], test_suite="nose.collector", entry_points={'console_scripts': ['glance = glanceclient.shell:main']}, + data_files=[('glanceclient', ['glanceclient/versioninfo'])] )