ref: 3a82bf4d0597c79a41029004b1a5622ad70268a9
parent: a7eb21760f376a2977847e6bf0e02d8827de9359
author: Christian Duvivier <cduvivier@google.com>
date: Thu Dec 22 11:04:15 EST 2011
Add script to test all builds. Change-Id: I6bbed8bcb2dfa3458ffc59179dfba66c92e18125
--- /dev/null
+++ b/all_builds.py
@@ -1,0 +1,43 @@
+#!/usr/bin/python
+
+import subprocess
+import sys
+
+def RunCommand(command):
+ run = subprocess.Popen(command, shell=True)
+ output = run.communicate()
+ if run.returncode:
+ print "Non-zero return code: " + str(run.returncode) + " => exiting!"
+ sys.exit(1)
+
+def list_of_experiments():
+ experiments = []
+ configure_file = open("configure")
+ list_start = False
+ for line in configure_file.read().split("\n"):
+ if line == 'EXPERIMENT_LIST="':
+ list_start = True
+ elif line == '"':
+ list_start = False
+ elif list_start:
+ currently_broken = ["csm"]
+ experiment = line[4:]
+ if experiment not in currently_broken:
+ experiments.append(experiment)
+ return experiments
+
+def main():
+ base_command = "./configure --enable-internal-stats"
+ test_build(base_command)
+ for experiment_name in list_of_experiments():
+ test_build("%s --enable-experimental --enable-%s" % (base_command,
+ experiment_name))
+
+def test_build(configure_command):
+ print "\033[34m\033[47mTesting %s\033[0m" % (configure_command)
+ RunCommand(configure_command)
+ RunCommand("make clean")
+ RunCommand("make")
+
+if __name__ == "__main__":
+ main()
--
⑨