[asterisk-commits] pabelanger: branch pabelanger/ast_version r3017 - in /asterisk/team/pabelange...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu Jan 26 10:34:33 CST 2012
Author: pabelanger
Date: Thu Jan 26 10:34:30 2012
New Revision: 3017
URL: http://svnview.digium.com/svn/testsuite?view=rev&rev=3017
Log:
No longer depend on version.h for asterisk version
We'll now attempt to run the asterisk binary and parse the version from it
Modified:
asterisk/team/pabelanger/ast_version/lib/python/asterisk/version.py
asterisk/team/pabelanger/ast_version/runtests.py
Modified: asterisk/team/pabelanger/ast_version/lib/python/asterisk/version.py
URL: http://svnview.digium.com/svn/testsuite/asterisk/team/pabelanger/ast_version/lib/python/asterisk/version.py?view=diff&rev=3017&r1=3016&r2=3017
==============================================================================
--- asterisk/team/pabelanger/ast_version/lib/python/asterisk/version.py (original)
+++ asterisk/team/pabelanger/ast_version/lib/python/asterisk/version.py Thu Jan 26 10:34:30 2012
@@ -15,6 +15,8 @@
import re
import unittest
import logging
+import subprocess
+import utils
logger = logging.getLogger(__name__)
@@ -34,20 +36,30 @@
version string to pull out and Parse.
"""
self.svn = False
- if version is not None:
+ self.ast_binary = utils.which("asterisk") or "/usr/sbin/asterisk"
+
+ if version is None:
+ cmd = [
+ self.ast_binary,
+ "-V",
+ ]
+
+ try:
+ process = subprocess.Popen(cmd, stdout=subprocess.PIPE,
+ stderr=subprocess.STDOUT)
+ except OSError:
+ return
+
+ self.version_str = ""
+ try:
+ for l in process.stdout.readlines():
+ self.version_str += l
+ except OSError:
+ pass
+ self.version_str = self.version_str.replace("Asterisk ", "")
+
+ else:
self.version_str = version
- else:
- version_hdr_paths = [
- "../include/asterisk/version.h",
- "/usr/include/asterisk/version.h",
- "/usr/local/include/asterisk/version.h"
- ]
- if path:
- version_hdr_paths.insert(0, path)
- for p in version_hdr_paths:
- self.version_str = self.__get_ast_version(p)
- if self.version_str:
- break
if not self.version_str:
return
Modified: asterisk/team/pabelanger/ast_version/runtests.py
URL: http://svnview.digium.com/svn/testsuite/asterisk/team/pabelanger/ast_version/runtests.py?view=diff&rev=3017&r1=3016&r2=3017
==============================================================================
--- asterisk/team/pabelanger/ast_version/runtests.py (original)
+++ asterisk/team/pabelanger/ast_version/runtests.py Thu Jan 26 10:34:30 2012
@@ -342,19 +342,6 @@
help="Specify the version of Asterisk rather then detecting it.")
(options, args) = parser.parse_args(argv)
- # Check to see if this has been executed within a sub directory of an
- # Asterisk source tree. This is required so that we can execute
- # install and uninstall targets of the Asterisk Makefile in between
- # tests.
- if os.path.exists("../main/asterisk.c") is False:
- print "*** ERROR ***\n" \
- "runtests has not been executed from within a\n" \
- "subdirectory of an Asterisk source tree. This\n" \
- "is required for being able to uninstall and install\n" \
- "Asterisk in between tests.\n" \
- "***************\n"
- return 1
-
ast_version = AsteriskVersion(options.version)
#remove any trailing '/' from a test specified with the -t option
More information about the asterisk-commits
mailing list