diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 2ab3b8a47144377cd643b1e42b841d071c0a81bc..21b3d9a889ea8045a77ce648d82f9c0158fa81c8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -43,9 +43,13 @@ fast-build:
   extends: .general
   only: [merge_requests, branches]
   stage: precheck
-  image: $CI_REGISTRY/gpasero/otb-install-ubuntu-native
+  image: $CI_REGISTRY/gpasero/otb/otb-install-ubuntu-native
+  before_script:
+    - python3 CI/check_twin_pipelines.py
+    - git checkout $CI_COMMIT_REF_NAME
   script:
     - ctest -V -S CI/main_ci.cmake -DIMAGE_NAME:string=ubuntu-18.04-fast
+    - ccache -s
 
 debian-build:
   extends: .general
diff --git a/CI/main_ci.cmake b/CI/main_ci.cmake
index 1edbf1718ce81a666b2f65da919cc83113d09a4c..eb8aa84eecfd65cfdb9692e1bd4824224e299339 100644
--- a/CI/main_ci.cmake
+++ b/CI/main_ci.cmake
@@ -130,10 +130,15 @@ if ( NOT _build_rv EQUAL 0 )
   message( SEND_ERROR "An error occurs during ctest_build.")
 endif()
 
-ctest_test(PARALLEL_LEVEL 8
-           RETURN_VALUE _test_rv
-           CAPTURE_CMAKE_ERROR _test_error
-           )
+if(ci_skip_testing)
+  message(STATUS "Skip testing")
+  set(_test_rv 0)
+else()
+  ctest_test(PARALLEL_LEVEL 8
+             RETURN_VALUE _test_rv
+             CAPTURE_CMAKE_ERROR _test_error
+             )
+endif()
 
 if ( NOT _test_rv EQUAL 0 )
   message( SEND_ERROR "An error occurs during ctest_test.")
diff --git a/CI/ubuntu-18.04-fast.cmake b/CI/ubuntu-18.04-fast.cmake
index 21c2a456c7a931ad42c9857920bd414f710955ca..5ba38ec80c18fcf420f77160b528c6555ee1d84e 100644
--- a/CI/ubuntu-18.04-fast.cmake
+++ b/CI/ubuntu-18.04-fast.cmake
@@ -31,3 +31,5 @@ CMAKE_C_COMPILER_LAUNCHER:STRING=ccache
 CMAKE_CXX_COMPILER_LAUNCHER:STRING=ccache
 OTB_USE_SHARK:BOOL=OFF
 BUILD_EXAMPLES:BOOL=OFF")
+
+set(ci_skip_testing ON)