[Tarantool-patches] [PATCH 3/3] ci: enable LuaJIT tests in CI
Igor Munkin
imun at tarantool.org
Thu Feb 4 02:22:17 MSK 2021
This patch adds LuaJIT tests to every CI job type except the one for
static build testing routine on OSX: there is no way to run LuaJIT tests
for out of source build on OSX due to SIP[1].
[1]: https://developer.apple.com/library/archive/documentation/Security/Conceptual/System_Integrity_Protection_Guide/FileSystemProtections/FileSystemProtections.html
Follows up #4862
Signed-off-by: Igor Munkin <imun at tarantool.org>
---
.travis.mk | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/.travis.mk b/.travis.mk
index 50524007c..c2b79a4e5 100644
--- a/.travis.mk
+++ b/.travis.mk
@@ -134,6 +134,7 @@ build_debian: configure_debian
test_debian_no_deps: build_debian
cd test && /usr/bin/python test-run.py --force $(TEST_RUN_EXTRA_PARAMS)
+ make LuaJIT-test
test_debian: deps_debian test_debian_no_deps
@@ -148,6 +149,7 @@ build_coverage_debian:
test_coverage_debian_no_deps: build_coverage_debian
# Enable --long tests for coverage
cd test && /usr/bin/python test-run.py --force $(TEST_RUN_EXTRA_PARAMS) --long
+ make LuaJIT-test
lcov --compat-libtool --directory src/ --capture --output-file coverage.info.tmp \
--rc lcov_branch_coverage=1 --rc lcov_function_coverage=1
lcov --compat-libtool --remove coverage.info.tmp 'tests/*' 'third_party/*' '/usr/*' \
@@ -213,6 +215,10 @@ test_asan_debian_no_deps: build_asan_debian
LSAN_OPTIONS=suppressions=${PWD}/asan/lsan.supp \
ASAN_OPTIONS=heap_profile=0:unmap_shadow_on_exit=1:detect_invalid_pointer_pairs=1:symbolize=1:detect_leaks=1:dump_instruction_bytes=1:print_suppressions=0 \
./test-run.py --force $(TEST_RUN_EXTRA_PARAMS)
+ ASAN=ON \
+ LSAN_OPTIONS=suppressions=${PWD}/asan/lsan.supp \
+ ASAN_OPTIONS=heap_profile=0:unmap_shadow_on_exit=1:detect_invalid_pointer_pairs=1:symbolize=1:detect_leaks=1:dump_instruction_bytes=1:print_suppressions=0 \
+ make LuaJIT-test
test_asan_debian: deps_debian deps_buster_clang_11 test_asan_debian_no_deps
@@ -237,6 +243,7 @@ test_static_build_cmake_linux:
make -j && ctest -V
cd test && /usr/bin/python test-run.py --force \
--builddir ${PWD}/static-build/tarantool-prefix/src/tarantool-build $(TEST_RUN_EXTRA_PARAMS)
+ make -C ${PWD}/static-build/tarantool-prefix/src/tarantool-build LuaJIT-test
# ###################
# Static Analysis
@@ -274,6 +281,7 @@ test_oos_no_deps: build_oos
${OOS_SRC_PATH}/test/test-run.py \
--builddir ${OOS_BUILD_PATH} \
--vardir ${OOS_BUILD_PATH}/test/var --force
+ make -C ${OOS_BUILD_PATH} LuaJIT-test
test_oos: deps_debian test_oos_no_deps
@@ -339,6 +347,7 @@ INIT_TEST_ENV_OSX=\
test_osx_no_deps: build_osx
${INIT_TEST_ENV_OSX}; \
cd test && ./test-run.py --vardir ${OSX_VARDIR} --force $(TEST_RUN_EXTRA_PARAMS)
+ make LuaJIT-test
test_osx: deps_osx test_osx_no_deps
@@ -362,6 +371,16 @@ test_static_build_cmake_osx: base_deps_osx
cd test && ./test-run.py --vardir ${OSX_VARDIR} \
--builddir ${PWD}/static-build/tarantool-prefix/src/tarantool-build \
--force $(TEST_RUN_EXTRA_PARAMS)
+ # FIXME: Hell with SIP on OSX: Tarantool (and also LuaJIT)
+ # is built out of sources, so the test located in the
+ # source directory fails to load the shared library built
+ # in the binary directory via dlopen(3).
+ # For more info proceed the link below:
+ # https://developer.apple.com/library/archive/documentation/Security/Conceptual/System_Integrity_Protection_Guide/FileSystemProtections/FileSystemProtections.html
+ # Do not run LuaJIT related tests for this built until the
+ # issue is not resolved.
+ #
+ # make -C ${PWD}/static-build/tarantool-prefix/src/tarantool-build LuaJIT-test
###########
@@ -378,6 +397,7 @@ build_freebsd:
test_freebsd_no_deps: build_freebsd
cd test && python2.7 test-run.py --force $(TEST_RUN_EXTRA_PARAMS)
+ make LuaJIT-test
test_freebsd: deps_freebsd test_freebsd_no_deps
--
2.25.0
More information about the Tarantool-patches
mailing list