diff --git a/lib/platform/gitlab/index.js b/lib/platform/gitlab/index.js
index 1e1e5a147c1e04ed6ef9b282a5f4b64a08b53666..2c81d114b3856857811fe5b074d189ae34be4a67 100644
--- a/lib/platform/gitlab/index.js
+++ b/lib/platform/gitlab/index.js
@@ -127,12 +127,13 @@ async function getFileList(branchName = config.baseBranch) {
     return config.fileList;
   }
   try {
-    const res = await get(
-      `projects/${
-        config.repository
-      }/repository/tree?ref=${branchName}&recursive=true&per_page=100`,
-      { paginate: true }
-    );
+    let url = `projects/${
+      config.repository
+    }/repository/tree?ref=${branchName}&per_page=100`;
+    if (!(process.env.RENOVATE_DISABLE_FILE_RECURSION === 'true')) {
+      url += '&recursive=true';
+    }
+    const res = await get(url, { paginate: true });
     config.fileList = res.body
       .filter(item => item.type === 'blob' && item.mode !== '120000')
       .map(item => item.path)
diff --git a/test/platform/gitlab/__snapshots__/index.spec.js.snap b/test/platform/gitlab/__snapshots__/index.spec.js.snap
index f3b98691574df82e0326ff3056fb6cf4542ce0c0..5ac719b8a8feea29e096c177890f38ed90ec65bc 100644
--- a/test/platform/gitlab/__snapshots__/index.spec.js.snap
+++ b/test/platform/gitlab/__snapshots__/index.spec.js.snap
@@ -300,7 +300,7 @@ Array [
     },
   ],
   Array [
-    "projects/some%2Frepo%2Fproject/repository/tree?ref=undefined&recursive=true&per_page=100",
+    "projects/some%2Frepo%2Fproject/repository/tree?ref=undefined&per_page=100&recursive=true",
     Object {
       "paginate": true,
     },
@@ -323,7 +323,7 @@ Array [
     },
   ],
   Array [
-    "projects/some%2Frepo/repository/tree?ref=undefined&recursive=true&per_page=100",
+    "projects/some%2Frepo/repository/tree?ref=undefined&per_page=100&recursive=true",
     Object {
       "paginate": true,
     },
@@ -348,7 +348,7 @@ Array [
     },
   ],
   Array [
-    "projects/some%2Frepo/repository/tree?ref=undefined&recursive=true&per_page=100",
+    "projects/some%2Frepo/repository/tree?ref=undefined&per_page=100&recursive=true",
     Object {
       "paginate": true,
     },
@@ -373,7 +373,7 @@ Array [
     },
   ],
   Array [
-    "projects/some%2Frepo/repository/tree?ref=undefined&recursive=true&per_page=100",
+    "projects/some%2Frepo/repository/tree?ref=undefined&per_page=100&recursive=true",
     Object {
       "paginate": true,
     },
@@ -386,7 +386,7 @@ exports[`platform/gitlab initRepo should initialise the config for the repo - 2
 exports[`platform/gitlab setBaseBranch(branchName) sets the base branch 1`] = `
 Array [
   Array [
-    "projects/undefined/repository/tree?ref=some-branch&recursive=true&per_page=100",
+    "projects/undefined/repository/tree?ref=some-branch&per_page=100&recursive=true",
     Object {
       "paginate": true,
     },