diff --git a/runner_scripts/root/config.sh b/runner_scripts/root/config.sh
index 1d9b786506b89103f6916a483031bccc2c261fc3..49ad075ae97764487f25f07427323d5daa39f541 100755
--- a/runner_scripts/root/config.sh
+++ b/runner_scripts/root/config.sh
@@ -5,11 +5,13 @@ shopt -s inherit_errexit
 : "${CUSTOM_ENV_AUTH_USER:?"AUTH_USER CI/CD variable has not been set."}"
 : "${CUSTOM_ENV_CI_CONCURRENT_PROJECT_ID:?"CI_CONCURRENT_PROJECT_ID CI/CD variable has not been set."}"
 
+AUTH_USER_WORK=$(runuser "$AUTH_USER" --command "echo \$WORK")
+
 cat << EOS
 {
 
-  "builds_dir": "$WORK/gitlab-runner/builds/$CUSTOM_ENV_CI_CONCURRENT_PROJECT_ID",
-  "cache_dir": "$WORK/gitlab-runner/cache",
+  "builds_dir": "$AUTH_USER_WORK/gitlab-runner/builds/$CUSTOM_ENV_CI_CONCURRENT_PROJECT_ID",
+  "cache_dir": "$AUTH_USER_WORK/gitlab-runner/cache",
   "builds_dir_is_shared": false,
   "driver": {
     "name": "Testserver Cx"
diff --git a/runner_scripts/root/run.sh b/runner_scripts/root/run.sh
index 4ab6f3c1ea86b7ebac28c0597011ffdfb2d3bf3d..a88e6ee615117ae7c320f9927a78b5945f10837b 100755
--- a/runner_scripts/root/run.sh
+++ b/runner_scripts/root/run.sh
@@ -30,6 +30,7 @@ function error {
 AUTH_USER=$CUSTOM_ENV_AUTH_USER
 AUTH_USER_HOME=$(getent passwd "$AUTH_USER" | awk -F ":" '{print $6}')
 AUTH_USER_SHELL=$(getent passwd "$AUTH_USER" | awk -F ":" '{print $7}')
+AUTH_USER_WORK=$(runuser "$AUTH_USER" --command "echo \$WORK")
 
 ## Check if the user exists and the validity of its ID
 id -u "$AUTH_USER" >/dev/null 2>&1 || error "User $AUTH_USER does not exist"
@@ -51,7 +52,7 @@ exit 1
 
 chown -R "$AUTH_USER" "$TMPDIR"
 
-BASE_DIR=$WORK/gitlab-runner/builds/${CUSTOM_ENV_CI_CONCURRENT_PROJECT_ID:?}/${CUSTOM_ENV_CI_PROJECT_NAMESPACE:?}/${CUSTOM_ENV_CI_PROJECT_NAME:?}
+BASE_DIR=$AUTH_USER_WORK/gitlab-runner/builds/${CUSTOM_ENV_CI_CONCURRENT_PROJECT_ID:?}/${CUSTOM_ENV_CI_PROJECT_NAMESPACE:?}/${CUSTOM_ENV_CI_PROJECT_NAME:?}
 
 runuser "$AUTH_USER" --command "mkdir -p $BASE_DIR"