THRIFT-3918 Run subset of make cross
This closes #1079
diff --git a/.travis.yml b/.travis.yml
index fc5f953..81a88c3 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -42,15 +42,25 @@
- BUILD_LIBS="CPP C_GLIB HASKELL JAVA PYTHON TESTING TUTORIALS" # only meaningful for CMake builds
matrix:
- # TODO: Break up by protocol types to avoid 50min limit
- - TEST_NAME="Cross Language Tests"
+ - TEST_NAME="Cross Language Tests (Binary and Header Protocols)"
SCRIPT="cross-test.sh"
- BUILD_ARG="--enable-tutorial=no"
+ BUILD_ARG="-'(binary|header)'"
BUILD_ENV="-e CC=clang -e CXX=clang++ -e THRIFT_CROSSTEST_CONCURRENCY=4"
- - TEST_NAME="Cross Language Tests (Debian)"
+ - TEST_NAME="Cross Language Tests (Debian) (Binary and Header Protocols)"
SCRIPT="cross-test.sh"
- BUILD_ARG="--enable-tutorial=no"
+ BUILD_ARG="-'(binary|header)'"
+ BUILD_ENV="-e CC=clang -e CXX=clang++ -e THRIFT_CROSSTEST_CONCURRENCY=4"
+ DISTRO=debian
+
+ - TEST_NAME="Cross Language Tests (Compact and JSON Protocols)"
+ SCRIPT="cross-test.sh"
+ BUILD_ARG="-'(compact|json)'"
+ BUILD_ENV="-e CC=clang -e CXX=clang++ -e THRIFT_CROSSTEST_CONCURRENCY=4"
+
+ - TEST_NAME="Cross Language Tests (Debian) (Compact and JSON Protocols)"
+ SCRIPT="cross-test.sh"
+ BUILD_ARG="-'(compact|json)'"
BUILD_ENV="-e CC=clang -e CXX=clang++ -e THRIFT_CROSSTEST_CONCURRENCY=4"
DISTRO=debian
diff --git a/Makefile.am b/Makefile.am
index 10fe49a..38dd8c9 100755
--- a/Makefile.am
+++ b/Makefile.am
@@ -56,15 +56,18 @@
endif
if WITH_PYTHON
-cross: precross
+crossfeature: precross
$(CROSS_PY) test/test.py --retry-count 3 --features .* --skip-known-failures --server $(CROSS_LANGS_COMMA_SEPARATED)
- $(CROSS_PY) test/test.py --retry-count 3 --skip-known-failures --server $(CROSS_LANGS_COMMA_SEPARATED) --client $(CROSS_LANGS_COMMA_SEPARATED)
else
# feature test needs python build
-cross: precross
- $(CROSS_PY) test/test.py -s --server $(CROSS_LANGS_COMMA_SEPARATED) --client $(CROSS_LANGS_COMMA_SEPARATED)
+crossfeature:
endif
+cross-%: precross crossfeature
+ $(CROSS_PY) test/test.py --retry-count 3 --skip-known-failures --server $(CROSS_LANGS_COMMA_SEPARATED) --client $(CROSS_LANGS_COMMA_SEPARATED) --regex "$*"
+
+cross: cross-.*
+
TIMES = 1 2 3
fail: precross
$(CROSS_PY) test/test.py || true
diff --git a/build/docker/scripts/cross-test.sh b/build/docker/scripts/cross-test.sh
index 4da7813..43581a5 100755
--- a/build/docker/scripts/cross-test.sh
+++ b/build/docker/scripts/cross-test.sh
@@ -6,7 +6,7 @@
make -j3 precross
set +e
-make cross
+make cross$1
RET=$?
if [ $RET -ne 0 ]; then