]> git.ipfire.org Git - thirdparty/suricata-update.git/commitdiff
include git revision in version output
authorJason Ish <ish@unx.ca>
Thu, 30 Nov 2017 21:57:22 +0000 (15:57 -0600)
committerJason Ish <ish@unx.ca>
Fri, 1 Dec 2017 17:33:18 +0000 (11:33 -0600)
.gitignore
setup.py
suricata/update/__init__.py
suricata/update/main.py
suricata/update/version.py [new file with mode: 0644]

index 6cde500c651b650f1107d0c237bd3f283717f6f0..17b6cf9c93a33c11e93e53428b427109df709efd 100644 (file)
@@ -7,3 +7,6 @@ _work
 
 # Development update.yaml
 /update.yaml
+
+# The file containing the git revision.
+/suricata/update/revision.py*
index e51d8ff121a67a21ba49b592c798fd3b444f0c2f..351f2bb4e0baaf0ce1a5105a6ca5c3efde914071 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -1,10 +1,22 @@
+import subprocess
 from setuptools import setup
 
-import suricata.update
+from suricata.update.version import version
+
+def write_revision():
+    try:
+        revision = subprocess.check_output(
+            ["git", "rev-parse", "--short", "HEAD"])
+        with open("./suricata/update/revision.py", "w") as fileobj:
+            fileobj.write("revision = '%s'" % (revision.strip()))
+    except Exception as err:
+        print("Failed to get current git revision: %s" % (err))
+
+write_revision()
 
 setup(
     name="suricata-update",
-    version=suricata.update.version,
+    version=version,
     description="Suricata Update Tool",
     author="Jason Ish",
     author_email="ish@unx.ca",
index 9f7743d6aca511da9b371243bff3b4ef13c85a44..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1 +0,0 @@
-version = "1.0.0.dev"
index 9df97574c7434a66d84543e34063aa967708215a..2918aba872e09bcc687aa49d8ae54d079f0b0aef 100644 (file)
@@ -52,6 +52,12 @@ from suricata.update import util
 from suricata.update import sources
 from suricata.update import commands
 
+from suricata.update.version import version
+try:
+    from suricata.update.revision import revision
+except:
+    revision = "unknown"
+
 # Initialize logging, use colour if on a tty.
 if len(logging.root.handlers) == 0 and os.isatty(sys.stderr.fileno()):
     logger = logging.getLogger()
@@ -1159,9 +1165,8 @@ def _main():
     if args.quiet:
         logger.setLevel(logging.WARNING)
 
-    logger.debug("This is suricata-update version %s; Python: %s" % (
-        suricata.update.version,
-        sys.version.replace("\n", "- ")))
+    logger.debug("This is suricata-update version %s (rev: %s); Python: %s" % (
+        version, revision, sys.version.replace("\n", "- ")))
 
     config = Config(args)
     try:
@@ -1189,7 +1194,7 @@ def _main():
         return dump_sample_configs()
 
     if args.version:
-        print("suricata-update version %s" % suricata.update.version)
+        print("suricata-update version %s (rev: %s)" % (version, revision))
         return 0
 
     if args.help:
diff --git a/suricata/update/version.py b/suricata/update/version.py
new file mode 100644 (file)
index 0000000..fd3222d
--- /dev/null
@@ -0,0 +1,6 @@
+# Version format:
+# Release: 1.0.0
+# Beta: 1.0.0b1
+# Alpha: 1.0.0a1
+# Development: 1.0.0.dev0
+version = "1.0.0.dev0"