Milimetric has submitted this change and it was merged.

Change subject: Fix determining latest commit from git.
......................................................................


Fix determining latest commit from git.

Change-Id: I1711516d780d1d60d1f104eaad7af8a60b5297b1
---
M wikimetrics/configurables.py
1 file changed, 21 insertions(+), 11 deletions(-)

Approvals:
  Milimetric: Verified; Looks good to me, approved



diff --git a/wikimetrics/configurables.py b/wikimetrics/configurables.py
index bd6733d..08aa60a 100644
--- a/wikimetrics/configurables.py
+++ b/wikimetrics/configurables.py
@@ -93,20 +93,30 @@
         queue.config_from_object(args.override_config)
 
 
+def get_absolute_path():
+    return os.path.dirname(os.path.abspath(__file__)) + '/'
+
 def get_wikimetrics_version():
     """
     Returns
         a tuple of the form (pretty version string, latest commit sha)
     """
-    cmd = ['git', 'log', '--date', 'relative', "--pretty=format:'%an %ar %h'", 
'-n', '1']
-    p = subprocess.Popen(cmd, shell=False, stdout=subprocess.PIPE)
-    version, err = p.communicate()
-    if err is not None:
-        version = 'Unknown version'
-    cmd = ['git', 'log', '--date', 'relative', "--pretty=format:%h", '-n', '1']
-    p = subprocess.Popen(cmd, shell=False, stdout=subprocess.PIPE)
-    latest, err = p.communicate()
-    if err is not None:
-        latest = 'unknown'
-    
+    path = get_absolute_path()
+    orig_wd = os.getcwd() # remember our original working directory
+    try:
+        os.chdir(path)
+        cmd = ['git', 'log', '--date', 'relative', "--pretty=format:'%an %ar 
%h'", '-n', '1']
+        p = subprocess.Popen(cmd, shell=False, stdout=subprocess.PIPE)
+        version, err = p.communicate()
+        if err is not None:
+            version = 'Unknown version'
+        cmd = ['git', 'log', '--date', 'relative', "--pretty=format:%h", '-n', 
'1']
+        p = subprocess.Popen(cmd, shell=False, stdout=subprocess.PIPE)
+        latest, err = p.communicate()
+        if err is not None:
+            latest = 'unknown'
+    except:
+        pass
+    finally:
+        os.chdir(orig_wd)
     return version, latest

-- 
To view, visit https://gerrit.wikimedia.org/r/86293
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I1711516d780d1d60d1f104eaad7af8a60b5297b1
Gerrit-PatchSet: 3
Gerrit-Project: analytics/wikimetrics
Gerrit-Branch: master
Gerrit-Owner: Diederik <[email protected]>
Gerrit-Reviewer: Milimetric <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to