Tarantool development patches archive
 help / color / mirror / Atom feed
* [Tarantool-patches] [PATCH 1/2] cmake: move jepsen targets under option WITH_JEPSEN
       [not found] <cover.1600951585.git.sergeyb@tarantool.org>
@ 2020-09-24 12:50 ` sergeyb
  2020-09-25  9:30   ` Alexander V. Tikhonov
  2020-09-24 12:50 ` [Tarantool-patches] [PATCH 2/2] gitignore: ignore directories made on running jepsen tests sergeyb
  1 sibling, 1 reply; 5+ messages in thread
From: sergeyb @ 2020-09-24 12:50 UTC (permalink / raw)
  To: tarantool-patches, avtikhon, alexander.turenko

From: Sergey Bronnikov <sergeyb@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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Tarantool-patches] [PATCH 2/2] gitignore: ignore directories made on running jepsen tests
       [not found] <cover.1600951585.git.sergeyb@tarantool.org>
  2020-09-24 12:50 ` [Tarantool-patches] [PATCH 1/2] cmake: move jepsen targets under option WITH_JEPSEN sergeyb
@ 2020-09-24 12:50 ` sergeyb
  2020-09-25  9:24   ` Alexander V. Tikhonov
  2020-09-25 12:59   ` Kirill Yukhin
  1 sibling, 2 replies; 5+ messages in thread
From: sergeyb @ 2020-09-24 12:50 UTC (permalink / raw)
  To: tarantool-patches, avtikhon, alexander.turenko

From: Sergey Bronnikov <sergeyb@tarantool.org>

On running Jepsen tests created directory with Terraform state and directory
with Jepsen tests source code in a build directory. Everything is ok on using
out of source build in a separate directory, but with building in a project
root directory these directories appears in `git status` output. This patch add
ignores for these directories.
---
 .gitignore | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/.gitignore b/.gitignore
index c6e261e18..d5531419d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -144,6 +144,10 @@ sftpscript.txt
 *.md5sum
 extra/deploy_key
 compile_commands.json
+jepsen-tests-prefix
+.terraform
+terraform.tfstate
+terraform.tfstate.backup
 
 # autogenerated files
 src/box/sql/keywordhash.h
-- 
2.25.1

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Tarantool-patches] [PATCH 2/2] gitignore: ignore directories made on running jepsen tests
  2020-09-24 12:50 ` [Tarantool-patches] [PATCH 2/2] gitignore: ignore directories made on running jepsen tests sergeyb
@ 2020-09-25  9:24   ` Alexander V. Tikhonov
  2020-09-25 12:59   ` Kirill Yukhin
  1 sibling, 0 replies; 5+ messages in thread
From: Alexander V. Tikhonov @ 2020-09-25  9:24 UTC (permalink / raw)
  To: sergeyb; +Cc: tarantool-patches

Hi Sergey, thanks for the patch. Patch only for git side, LGTM.

On Thu, Sep 24, 2020 at 03:50:24PM +0300, sergeyb@tarantool.org wrote:
> From: Sergey Bronnikov <sergeyb@tarantool.org>
> 
> On running Jepsen tests created directory with Terraform state and directory
> with Jepsen tests source code in a build directory. Everything is ok on using
> out of source build in a separate directory, but with building in a project
> root directory these directories appears in `git status` output. This patch add
> ignores for these directories.
> ---
>  .gitignore | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/.gitignore b/.gitignore
> index c6e261e18..d5531419d 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -144,6 +144,10 @@ sftpscript.txt
>  *.md5sum
>  extra/deploy_key
>  compile_commands.json
> +jepsen-tests-prefix
> +.terraform
> +terraform.tfstate
> +terraform.tfstate.backup
>  
>  # autogenerated files
>  src/box/sql/keywordhash.h
> -- 
> 2.25.1
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Tarantool-patches] [PATCH 1/2] cmake: move jepsen targets under option WITH_JEPSEN
  2020-09-24 12:50 ` [Tarantool-patches] [PATCH 1/2] cmake: move jepsen targets under option WITH_JEPSEN sergeyb
@ 2020-09-25  9:30   ` Alexander V. Tikhonov
  0 siblings, 0 replies; 5+ messages in thread
From: Alexander V. Tikhonov @ 2020-09-25  9:30 UTC (permalink / raw)
  To: sergeyb; +Cc: tarantool-patches

Hi Sergey, thanks for the patch. As I see you blocked all the Jepsen
part in cmake targets under the Jepsen's environment variable. And
now only using it the Jepsen's repository will be used. So patch LGTM.

On Thu, Sep 24, 2020 at 03:50:22PM +0300, sergeyb@tarantool.org wrote:
> From: Sergey Bronnikov <sergeyb@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
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Tarantool-patches] [PATCH 2/2] gitignore: ignore directories made on running jepsen tests
  2020-09-24 12:50 ` [Tarantool-patches] [PATCH 2/2] gitignore: ignore directories made on running jepsen tests sergeyb
  2020-09-25  9:24   ` Alexander V. Tikhonov
@ 2020-09-25 12:59   ` Kirill Yukhin
  1 sibling, 0 replies; 5+ messages in thread
From: Kirill Yukhin @ 2020-09-25 12:59 UTC (permalink / raw)
  To: sergeyb; +Cc: tarantool-patches, alexander.turenko

Hello,

On 24 сен 15:50, sergeyb@tarantool.org wrote:
> From: Sergey Bronnikov <sergeyb@tarantool.org>
> 
> On running Jepsen tests created directory with Terraform state and directory
> with Jepsen tests source code in a build directory. Everything is ok on using
> out of source build in a separate directory, but with building in a project
> root directory these directories appears in `git status` output. This patch add
> ignores for these directories.
> ---
>  .gitignore | 4 ++++
>  1 file changed, 4 insertions(+)

I've checked both patches into master.
In future please mention branch name in the letter.

--
Regards, Kirill Yukhin

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-09-25 12:59 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <cover.1600951585.git.sergeyb@tarantool.org>
2020-09-24 12:50 ` [Tarantool-patches] [PATCH 1/2] cmake: move jepsen targets under option WITH_JEPSEN sergeyb
2020-09-25  9:30   ` Alexander V. Tikhonov
2020-09-24 12:50 ` [Tarantool-patches] [PATCH 2/2] gitignore: ignore directories made on running jepsen tests sergeyb
2020-09-25  9:24   ` Alexander V. Tikhonov
2020-09-25 12:59   ` Kirill Yukhin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox