diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8b22dbf873348f64754cfab489f297415c198c90..f0de6bfcd81f02792a9521b220cd7a30a5695ac2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -10,6 +10,7 @@
 
 variables:
   BUILD_IMAGE_REGISTRY: $CI_REGISTRY/orfeotoolbox/otb-build-env
+  GIT_CLONE_PATH: $CI_BUILDS_DIR/otb
   DOCKER_DRIVER: overlay2
   GIT_DEPTH: "3"
   # Disable automatic checkout to let us fetch LFS before
diff --git a/CI/configure_option.cmake b/CI/configure_options.cmake
similarity index 100%
rename from CI/configure_option.cmake
rename to CI/configure_options.cmake
diff --git a/CI/main_ci.cmake b/CI/main_ci.cmake
index eba3829c5017383a253e86a2d197ec0f1b860f1a..052fae88822b9b6d4d20b435f55bfb1090990b33 100644
--- a/CI/main_ci.cmake
+++ b/CI/main_ci.cmake
@@ -84,7 +84,7 @@ message(STATUS "CI profile : ${ci_profile}")
 #The following file set the CONFIGURE_OPTIONS variable
 set (ENABLE_DOXYGEN OFF)
 set (CONFIGURE_OPTIONS  "")
-include ( "${CMAKE_CURRENT_LIST_DIR}/configure_option.cmake" )
+include ( "${CMAKE_CURRENT_LIST_DIR}/configure_options.cmake" )
 
 # Sources are already checked out : do nothing for update
 set(CTEST_GIT_UPDATE_CUSTOM echo No update)
diff --git a/CI/main_superbuild.cmake b/CI/main_superbuild.cmake
index 757dbb1ad39e55f75e76f157da0ddd15118c74d7..a7ba0f96d7049eb6b10d4227acd33ff6d886f594 100644
--- a/CI/main_superbuild.cmake
+++ b/CI/main_superbuild.cmake
@@ -17,14 +17,12 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
+# This script is a prototype for the future CI, it may evolve rapidly in a near future
 
 include( "${CMAKE_CURRENT_LIST_DIR}/macros.cmake" )
 
-# This script is a prototype for the future CI, it may evolve rapidly in a near future
 set (ENV{LANG} "C") # Only ascii output
 get_filename_component(OTB_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR} DIRECTORY)
-get_filename_component(CI_PROJ_DIR ${OTB_SOURCE_DIR} DIRECTORY)
-get_filename_component(CI_ROOT_DIR ${CI_PROJ_DIR} DIRECTORY)
 
 ###########################################################################
 ###########################################################################
@@ -56,7 +54,7 @@ set( GIT "${CTEST_GIT_COMMAND}" )
 execute_process(
   COMMAND ${GIT} "clone" "${REMOTE}" "--branch" "${BRANCH_NAME}"
   "--depth" "1" "superbuild-artifact"
-  WORKING_DIRECTORY ${CI_PROJ_DIR}
+  WORKING_DIRECTORY ${OTB_SOURCE_DIR}
   RESULT_VARIABLE clone_res
   OUTPUT_VARIABLE clone_out
   ERROR_VARIABLE clone_err
@@ -77,17 +75,17 @@ endif()
 set (CMAKE_COMMAND "cmake")
 execute_process(
   COMMAND ${CMAKE_COMMAND} "-E" "tar" "xf"
-  "${CI_PROJ_DIR}/superbuild-artifact/SuperBuild_Install.tar"
-  WORKING_DIRECTORY ${CI_ROOT_DIR}
+  "${OTB_SOURCE_DIR}/superbuild-artifact/SuperBuild_Install.tar"
+  WORKING_DIRECTORY ${OTB_SOURCE_DIR}
   )
 
-set( XDK_PATH "${CI_ROOT_DIR}/xdk")
+set( XDK_PATH "${OTB_SOURCE_DIR}/xdk")
 
 if ( DEBUG )
   if ( EXISTS "${XDK_PATH}")
-    message("Tar file exists at ${XDK_PATH}")
+    message("Xdk folder exists at ${XDK_PATH}")
   else()
-    message("Something went wrong no tar file in ${XDK_PATH}")
+    message("Something went wrong no folder in ${XDK_PATH}")
   endif()
 endif()
 
@@ -112,7 +110,7 @@ set ( CTEST_INSTALL_DIRECTORY "${OTB_SOURCE_DIR}/install/" )
 set ( PROJECT_SOURCE_DIR "${OTB_SOURCE_DIR}" )
 
 set (CONFIGURE_OPTIONS  "")
-include ( "${CMAKE_CURRENT_LIST_DIR}/configure_option.cmake" )
+include ( "${CMAKE_CURRENT_LIST_DIR}/configure_options.cmake" )
 # SuperBuild case : one more configure option
 set ( CONFIGURE_OPTIONS
   "${CONFIGURE_OPTIONS}-DCMAKE_PREFIX_PATH=${XDK_PATH};")
@@ -127,10 +125,11 @@ set( GEOTIFF_CSV "${XDK_PATH}/share/epsg_csv" )
 set( PROJ_LIB "${XDK_PATH}/share" )
 set( CTEST_ENVIRONMENT
 "PATH=${XDK_PATH}/lib:${XDK_PATH}/bin:$ENV{PATH}
-GDAL_DATA= GDAL_DATA
-GEOTIFF_CSV= GEOTIFF_CSV
-PROJ_LIB= PROJ_LIB
 ")
+# It seems that we do not need that
+# GDAL_DATA= GDAL_DATA
+# GEOTIFF_CSV= GEOTIFF_CSV
+# PROJ_LIB= PROJ_LIB
 
 # Sources are already checked out : do nothing for update
 set(CTEST_GIT_UPDATE_CUSTOM echo No update)
diff --git a/CI/prepare_superbuild.cmake b/CI/prepare_superbuild.cmake
index 65f420c5e865e43043e544764c599a494457f242..47eec850c1c19af099f0e61ae02b01216a57195e 100644
--- a/CI/prepare_superbuild.cmake
+++ b/CI/prepare_superbuild.cmake
@@ -23,13 +23,6 @@ include( "${CMAKE_CURRENT_LIST_DIR}/macros.cmake" )
 
 set (ENV{LANG} "C") # Only ascii output
 get_filename_component(OTB_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR} DIRECTORY)
-get_filename_component(CI_PROJ_DIR ${OTB_SOURCE_DIR} DIRECTORY)
-get_filename_component(CI_ROOT_DIR ${CI_PROJ_DIR} DIRECTORY)
-
-# In GitLab we have :
-#   OTB_SOURCE_DIR=/builds/{project_dir}/otb
-#   CI_PROJ_DIR=/builds/{project_dir}
-#   CI_ROOT_DIR=/builds
 
 set ( DEBUG "1" )
 
@@ -52,7 +45,7 @@ set_dash_build_name()
 # This is platform dependent, and the next step (build) also
 # depends on that, as some paths are hardcoded
 # This can be fixed with a packaging of OTB_DEPENDS
-set (CTEST_INSTALL_DIRECTORY "${CI_ROOT_DIR}/xdk/")
+set (CTEST_INSTALL_DIRECTORY "${OTB_SOURCE_DIR}/xdk/")
 
 # HACK
 # This is needed because when using return() function ctest is trying
@@ -82,7 +75,7 @@ ctest_update( SOURCE "${OTB_SOURCE_DIR}" )
 set(CTEST_BUILD_FLAGS "-j16")
 
 set ( SB_CONFIGURE_OPTIONS "")
-include( "${CMAKE_CURRENT_LIST_DIR}/../SuperBuild/CI/configure_options.cmake" )
+include( "${CMAKE_CURRENT_LIST_DIR}/sb_configure_options.cmake" )
 
 ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}"
     SOURCE "${SUPERBUILD_SOURCE_DIR}"
@@ -116,8 +109,7 @@ foreach(sb_file  ${sb_file_list})
   file(APPEND ${SB_TXT} "${sb_file}${CONTENTS}")
 endforeach(sb_file)
 file(READ "${CTEST_BINARY_DIRECTORY}/CMakeCache.txt" CMAKE_ORIG)
-string(REPLACE "${CI_PROJ_DIR}" "" CMAKE_UNIFIED ${CMAKE_ORIG})
-file(APPEND ${SB_TXT} "CMakeCache.txt${CMAKE_UNIFIED}")
+file(APPEND ${SB_TXT} "CMakeCache.txt${CMAKE_ORIG}")
 file ( MD5 "${SB_TXT}" SB_MD5)
 message ( "SB_MD5 = ${SB_MD5}" )
 file (REMOVE ${SB_TXT})
@@ -180,7 +172,6 @@ ctest_submit()
 # TODO right now we rely on ctest_build to know whether there has been an error
 # in build, whereas SuperBuild does not necessarily return an error if something
 # goes wrong
-set ( SB_ARTIFACT_GIT "${CI_PROJ_DIR}/superbuild-artifact" )
 
 # REPOSITORY_GIT_URL and REMOTE whould be the same. Right now there are
 # different because one is https and one is ssh. Both should be ssh.
@@ -190,15 +181,16 @@ set( REPOSITORY_GIT_URL "git@gitlab.orfeo-toolbox.org:gbonnefille/superbuild-art
 execute_process(
   COMMAND ${GIT} "clone" "${REPOSITORY_GIT_URL}"
   "--branch" "master" "--depth" "1" "superbuild-artifact"
-  WORKING_DIRECTORY "${CI_PROJ_DIR}"
+  WORKING_DIRECTORY "${OTB_SOURCE_DIR}"
   )
+set ( SB_ARTIFACT_GIT "${OTB_SOURCE_DIR}/superbuild-artifact" )
 
 # setting up the repo
 # StrictHostKeyChecking so we don't have to add the host as a known key
 # -F /dev/null so the agent is not taking a default file ~/.ssh/..
 execute_process(
   COMMAND ${GIT} "config" "core.sshCommand"
-  "ssh -o StrictHostKeyChecking=no -F /dev/null"
+  "ssh -o StrictHostKeyChecking=no"
   WORKING_DIRECTORY ${SB_ARTIFACT_GIT}
   RESULT_VARIABLE ssh_res
   OUTPUT_VARIABLE ssh_out
@@ -260,24 +252,15 @@ endif()
 
 set ( SB_TAR_NAME "SuperBuild_Install.tar" )
 
-# create the tar
-# We need to create tar in its directory to avoid weird name in file
-# "tar: Removing leading `../../' from member names"
-# WARNING
-# We are creating a tar containing xdk/.., so when extracting the archive in
-# an other environment the output file will be xdk... Obvious isn't it?
-# Well... Not for everyone...
+# Creating the tar
 # May be for easier maintainability the tar name should be the same as the
 # file inside.
 execute_process(
-  COMMAND ${CMAKE_COMMAND} "-E" "tar" "cf" "${SB_TAR_NAME}"
+  COMMAND ${CMAKE_COMMAND} "-E" "tar" "cf" "${SB_ARTIFACT_GIT}/${SB_TAR_NAME}"
   -- "${CTEST_INSTALL_DIRECTORY}"
-  WORKING_DIRECTORY ${CI_ROOT_DIR}
+  WORKING_DIRECTORY ${OTB_SOURCE_DIR}
   )
 
-# We need to copy the tar file, as it is on a different partition in the gitlab
-# context
-file ( COPY "${CI_ROOT_DIR}/${SB_TAR_NAME}" DESTINATION "${SB_ARTIFACT_GIT}")
 
 # In a near futur it might be nice to clean up the mess we made...
 
diff --git a/SuperBuild/CI/configure_options.cmake b/CI/sb_configure_options.cmake
similarity index 100%
rename from SuperBuild/CI/configure_options.cmake
rename to CI/sb_configure_options.cmake
diff --git a/SuperBuild/CMakeLists.txt b/SuperBuild/CMakeLists.txt
index 27f42a751b0c8966d6775369645e9c39a43b6b80..a4d361d3aecbe6c35fd496837d27b1db35070653 100644
--- a/SuperBuild/CMakeLists.txt
+++ b/SuperBuild/CMakeLists.txt
@@ -18,8 +18,6 @@
 # limitations under the License.
 #
 
-## COMMMENT to dirty superbuild artifact. TAG: 1.
-
 cmake_minimum_required(VERSION 3.3.0)
 
 project(OTB-SuperBuild)