diff --git a/lib/util/fs/proxies.ts b/lib/util/fs/proxies.ts
index 3c4e42d330bef07c8e60bb640ae9dfe935bfed85..96cdbf822f2f02ae9f742893c3227ac052798086 100644
--- a/lib/util/fs/proxies.ts
+++ b/lib/util/fs/proxies.ts
@@ -18,14 +18,6 @@ export function readFile(
   return encoding ? fs.readFile(fileName, encoding) : fs.readFile(fileName);
 }
 
-// istanbul ignore next
-export function writeFile(
-  fileName: string,
-  fileContent: string
-): Promise<void> {
-  return fs.writeFile(fileName, fileContent);
-}
-
 // istanbul ignore next
 export function outputFile(
   file: string,
diff --git a/lib/workers/global/index.spec.ts b/lib/workers/global/index.spec.ts
index 680648a2dcf93d13c14637f52399ee0ab6ee616b..2ac08c5256539f408bbd5f201e0aa015c397a8c1 100644
--- a/lib/workers/global/index.spec.ts
+++ b/lib/workers/global/index.spec.ts
@@ -1,6 +1,7 @@
 import { expect } from '@jest/globals';
 import { ERROR, WARN } from 'bunyan';
-import { fs, logger, mocked } from '../../../test/util';
+import * as _fs from 'fs-extra';
+import { logger, mocked } from '../../../test/util';
 import * as _presets from '../../config/presets';
 import { PlatformId } from '../../constants';
 import { CONFIG_PRESETS_INVALID } from '../../constants/error-messages';
@@ -15,6 +16,9 @@ jest.mock('../repository');
 jest.mock('../../util/fs');
 jest.mock('../../config/presets');
 
+jest.mock('fs-extra');
+const fs = mocked(_fs);
+
 // imports are readonly
 const repositoryWorker = _repositoryWorker;
 const configParser: jest.Mocked<typeof _configParser> = _configParser as never;
@@ -176,7 +180,6 @@ describe('workers/global/index', () => {
         endpoint: 'https://github.com/',
         writeDiscoveredRepos: '/tmp/renovate-output.json',
       });
-      fs.writeFile.mockResolvedValueOnce();
 
       expect(await globalWorker.start()).toBe(0);
       expect(fs.writeFile).toHaveBeenCalledTimes(1);
diff --git a/lib/workers/global/index.ts b/lib/workers/global/index.ts
index 70a32e5b6eb0c982bd36bf2abfbfb8e30ef1c0aa..8997a11db184c14d70370e80639977f3da9c0f96 100644
--- a/lib/workers/global/index.ts
+++ b/lib/workers/global/index.ts
@@ -16,7 +16,6 @@ import type {
 import { CONFIG_PRESETS_INVALID } from '../../constants/error-messages';
 import { pkg } from '../../expose.cjs';
 import { getProblems, logger, setMeta } from '../../logger';
-import { writeFile } from '../../util/fs';
 import * as hostRules from '../../util/host-rules';
 import * as repositoryWorker from '../repository';
 import { autodiscoverRepositories } from './autodiscover';
@@ -133,7 +132,7 @@ export async function start(): Promise<number> {
 
     if (is.nonEmptyString(config.writeDiscoveredRepos)) {
       const content = JSON.stringify(config.repositories);
-      await writeFile(config.writeDiscoveredRepos, content);
+      await fs.writeFile(config.writeDiscoveredRepos, content);
       logger.info(
         `Written discovered repositories to ${config.writeDiscoveredRepos}`
       );