Skip to content

Commit 3f19d6f

Browse files
committed
fix(plugin-eslint): ensure working directory exists before writing .eslintrc.json
1 parent ee539b3 commit 3f19d6f

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

packages/plugin-eslint/src/lib/eslint-plugin.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { writeFile } from 'fs/promises';
1+
import { mkdir, writeFile } from 'fs/promises';
22
import { dirname, join } from 'path';
33
import { fileURLToPath } from 'url';
44
import { PluginConfig } from '@code-pushup/models';
@@ -39,6 +39,7 @@ export async function eslintPlugin(
3939

4040
// save inline config to file so runner can access it later
4141
if (typeof eslintrc !== 'string') {
42+
await mkdir(dirname(ESLINTRC_PATH), { recursive: true });
4243
await writeFile(ESLINTRC_PATH, JSON.stringify(eslintrc));
4344
}
4445
const eslintrcPath = typeof eslintrc === 'string' ? eslintrc : ESLINTRC_PATH;

packages/plugin-eslint/src/lib/runner.integration.test.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { ESLint } from 'eslint';
2-
import { rm, writeFile } from 'fs/promises';
2+
import { mkdir, rm, writeFile } from 'fs/promises';
33
import os from 'os';
44
import { dirname, join } from 'path';
55
import { fileURLToPath } from 'url';
@@ -48,6 +48,7 @@ describe('executeRunner', () => {
4848
const config: ESLint.ConfigData = {
4949
extends: '@code-pushup',
5050
};
51+
await mkdir(dirname(ESLINTRC_PATH), { recursive: true });
5152
await writeFile(ESLINTRC_PATH, JSON.stringify(config));
5253
});
5354

0 commit comments

Comments
 (0)