From 732414207cadbd9ed1af9d3ef5b4766e3435e7a9 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 6 Jun 2015 11:37:31 +0000 Subject: [PATCH] Add version information Signed-off-by: Michael Tremer --- .gitignore | 1 + Makefile.am | 1 + configure.ac | 1 + src/collecty/__version__.py.in | 2 ++ src/collecty/bus.py | 4 ++++ src/collecty/client.py | 14 ++++++++++++++ src/collecty/constants.py | 2 ++ 7 files changed, 25 insertions(+) create mode 100644 src/collecty/__version__.py.in diff --git a/.gitignore b/.gitignore index 6e3c11c..4413936 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ /man/*.[0-9] /man/*.html /missing +/src/collecty/__version__.py /src/systemd/collecty.service /tmp *.py[co] diff --git a/Makefile.am b/Makefile.am index 80c1946..fe00da7 100644 --- a/Makefile.am +++ b/Makefile.am @@ -72,6 +72,7 @@ dist_bin_SCRIPTS = \ collecty_PYTHON = \ src/collecty/__init__.py \ + src/collecty/__version__.py \ src/collecty/bus.py \ src/collecty/client.py \ src/collecty/constants.py \ diff --git a/configure.ac b/configure.ac index 46fc55b..c0e8011 100644 --- a/configure.ac +++ b/configure.ac @@ -146,6 +146,7 @@ AC_SUBST([dbussystemservicedir], [$with_dbussystemservicedir]) AC_CONFIG_FILES([ Makefile po/Makefile.in + src/collecty/__version__.py ]) AC_OUTPUT diff --git a/src/collecty/__version__.py.in b/src/collecty/__version__.py.in new file mode 100644 index 0000000..3851b24 --- /dev/null +++ b/src/collecty/__version__.py.in @@ -0,0 +1,2 @@ +# this file is autogenerated by the buildsystem +COLLECTY_VERSION = "@PACKAGE_VERSION@" diff --git a/src/collecty/bus.py b/src/collecty/bus.py index d67332f..463f422 100644 --- a/src/collecty/bus.py +++ b/src/collecty/bus.py @@ -93,3 +93,7 @@ class GraphGenerator(dbus.service.Object): Returns a list of all available templates """ return [t.name for t in self.collecty.templates] + + @dbus.service.method(BUS_DOMAIN, in_signature="", out_signature="s") + def Version(self): + return COLLECTY_VERSION diff --git a/src/collecty/client.py b/src/collecty/client.py index 39c5fe8..05c0760 100644 --- a/src/collecty/client.py +++ b/src/collecty/client.py @@ -21,6 +21,7 @@ import argparse import dbus +import platform import sys from .constants import * @@ -76,6 +77,15 @@ class CollectyClient(object): with open(ns.filename, "wb") as f: f.write(graph) + def version_cli(self, args): + daemon_version = self.proxy.Version() + + print(_("collecty %s running on Python %s") % \ + (COLLECTY_VERSION, platform.python_version())) + + if not COLLECTY_VERSION == daemon_version: + print(_("daemon %s") % daemon_version) + def parse_cli(self, args): parser = argparse.ArgumentParser(prog="collecty-client") subparsers = parser.add_subparsers(help="sub-command help") @@ -105,6 +115,10 @@ class CollectyClient(object): help=_("Lists all graph templates")) parser_list_templates.set_defaults(func=self.list_templates_cli) + # version + parser_version = subparsers.add_parser("version", help=_("Show version")) + parser_version.set_defaults(func=self.version_cli) + return parser.parse_args(args) def run_cli(self, args=None): diff --git a/src/collecty/constants.py b/src/collecty/constants.py index 34d5406..9bca6d7 100644 --- a/src/collecty/constants.py +++ b/src/collecty/constants.py @@ -21,6 +21,8 @@ from .i18n import _ +from .__version__ import * + DATABASE_DIR = "/var/lib/collecty" BUS_DOMAIN = "org.ipfire.collecty1" -- 2.39.2