[lttng-dev] [PATCH 1/5] run-report: Use libtool wrapper to spawn the sessiond for tests
Christian Babeux
christian.babeux at efficios.com
Tue Dec 18 16:31:14 EST 2012
The run-report script was using the sessiond binary generated via libtool
under the ".libs/" folder. When using this binary, the consumerd used when
starting the sessiond is the one installed system-wide (if any). This could
lead to tests failures if no consumer are installed in the system or any
version mismatch occurs.
This commit fix this by using the consumerd that was built with libtool in
the local source tree.
Signed-off-by: Christian Babeux <christian.babeux at efficios.com>
---
tests/run-report.py | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/tests/run-report.py b/tests/run-report.py
index 1516c7e..ca6e6a3 100755
--- a/tests/run-report.py
+++ b/tests/run-report.py
@@ -5,11 +5,14 @@ import subprocess
import threading
import Queue
import time
+import shlex
from signal import signal, SIGTERM, SIGINT
SESSIOND_BIN_NAME = "lttng-sessiond"
-SESSIOND_BIN_PATH = "src/bin/lttng-sessiond/.libs/"
+SESSIOND_BIN_PATH = "src/bin/lttng-sessiond/"
+CONSUMERD_BIN_NAME = "lttng-consumerd"
+CONSUMERD_BIN_PATH = "src/bin/lttng-consumerd/"
TESTDIR_PATH = ""
PRINT_BRACKET = "\033[1;34m[\033[1;33m+\033[1;34m]\033[00m"
@@ -208,19 +211,26 @@ def spawn_session_daemon():
os.kill(pid, SIGTERM)
bin_path = os.path.join(TESTDIR_PATH, "..", SESSIOND_BIN_PATH, SESSIOND_BIN_NAME)
+ consumer_path = os.path.join(TESTDIR_PATH, "..", CONSUMERD_BIN_PATH, CONSUMERD_BIN_NAME)
if not os.path.isfile(bin_path):
print "Error: No session daemon binary found. Compiled?"
return 0
try:
- sdaemon_proc = subprocess.Popen([bin_path, "-d"], shell=False,
- stderr = subprocess.PIPE)
+ args = shlex.split("libtool execute " + bin_path
+ + " --consumerd32-path=" + consumer_path
+ + " --consumerd64-path=" + consumer_path)
+
+ sdaemon_proc = subprocess.Popen(args, shell = False, stderr = subprocess.PIPE)
+
except OSError, e:
print e
return 0
- return get_pid(SESSIOND_BIN_NAME)
+ time.sleep(1)
+
+ return get_pid("lt-" + SESSIOND_BIN_NAME)
def start_test(name):
"""
--
1.8.0.2
More information about the lttng-dev
mailing list