[Tarantool-patches] [PATCH 1/2] cmake: move jepsen targets under option WITH_JEPSEN
sergeyb at tarantool.org
sergeyb at tarantool.org
Thu Sep 24 15:50:22 MSK 2020
From: Sergey Bronnikov <sergeyb at tarantool.org>
For running Jepsen tests we need to checkout external repository with tests
source code on a build stage. This behaviour brokes a Tarantool build under
Gentoo. Option WITH_JEPSEN enables targets only when they needed.
Closes #5325
---
.travis.mk | 2 +-
CMakeLists.txt | 46 +++++++++++++++++++++++++---------------------
2 files changed, 26 insertions(+), 22 deletions(-)
diff --git a/.travis.mk b/.travis.mk
index d8f97ef5c..17523fb86 100644
--- a/.travis.mk
+++ b/.travis.mk
@@ -293,5 +293,5 @@ test_freebsd: deps_freebsd test_freebsd_no_deps
# ###################
test_jepsen: deps_debian_jepsen
- cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_WERROR=ON
+ cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_WERROR=ON -DWITH_JEPSEN=ON
make jepsen-single
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e8850e320..512f50e05 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -164,30 +164,34 @@ add_custom_command(TARGET luacheck
COMMENT "Perform static analysis of Lua code"
)
-ExternalProject_Add(
- jepsen-tests
- GIT_REPOSITORY https://github.com/tarantool/jepsen.tarantool
- CONFIGURE_COMMAND ""
- BUILD_COMMAND ""
- INSTALL_COMMAND ""
- TEST_COMMAND ""
-)
+if (WITH_JEPSEN)
+ ExternalProject_Add(
+ jepsen-tests
+ GIT_REPOSITORY https://github.com/tarantool/jepsen.tarantool
+ CONFIGURE_COMMAND ""
+ BUILD_COMMAND ""
+ INSTALL_COMMAND ""
+ TEST_COMMAND ""
+ )
-#
-# Enable 'make jepsen-*' targets.
-#
+ #
+ # Enable 'make jepsen-*' targets.
+ #
-add_custom_target(jepsen-single DEPENDS jepsen-tests)
-add_custom_command(TARGET jepsen-single
- COMMAND ${BASH} ${PROJECT_SOURCE_DIR}/tools/run-jepsen-tests.sh ${PROJECT_SOURCE_DIR} ${PROJECT_BINARY_DIR}
- COMMENT "Running Jepsen tests on a single Tarantool instance"
-)
+ add_custom_target(jepsen-single DEPENDS jepsen-tests)
+ add_custom_command(TARGET jepsen-single
+ COMMAND ${BASH} ${PROJECT_SOURCE_DIR}/tools/run-jepsen-tests.sh
+ ${PROJECT_SOURCE_DIR} ${PROJECT_BINARY_DIR}
+ COMMENT "Running Jepsen tests on a single Tarantool instance"
+ )
-add_custom_target(jepsen-cluster DEPENDS jepsen-tests)
-add_custom_command(TARGET jepsen-cluster
- COMMAND ${BASH} ${PROJECT_SOURCE_DIR}/tools/run-jepsen-tests.sh ${PROJECT_SOURCE_DIR} ${PROJECT_BINARY_DIR} 5
- COMMENT "Running Jepsen tests on a cluster with 5 Tarantool instances"
-)
+ add_custom_target(jepsen-cluster DEPENDS jepsen-tests)
+ add_custom_command(TARGET jepsen-cluster
+ COMMAND ${BASH} ${PROJECT_SOURCE_DIR}/tools/run-jepsen-tests.sh
+ ${PROJECT_SOURCE_DIR} ${PROJECT_BINARY_DIR} 5
+ COMMENT "Running Jepsen tests on a cluster with 5 Tarantool instances"
+ )
+endif()
#
# Get version
--
2.25.1
More information about the Tarantool-patches
mailing list