From c35dc9a0f52fcce2a5702705549914321b4b6ed4 Mon Sep 17 00:00:00 2001 From: Steven Vachon Date: Tue, 18 Feb 2020 15:55:42 -0500 Subject: [PATCH] @grafana/toolkit: lint fix option now writes changes to disk (#22278) --- .../grafana-toolkit/src/cli/tasks/plugin.build.ts | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/grafana-toolkit/src/cli/tasks/plugin.build.ts b/packages/grafana-toolkit/src/cli/tasks/plugin.build.ts index c5e0f9ae8f2..5e76a9d0c61 100644 --- a/packages/grafana-toolkit/src/cli/tasks/plugin.build.ts +++ b/packages/grafana-toolkit/src/cli/tasks/plugin.build.ts @@ -10,7 +10,7 @@ import { constants as fsConstants, promises as fs } from 'fs'; import { CLIEngine } from 'eslint'; import { bundlePlugin as bundleFn, PluginBundleOptions } from './plugin/bundle'; -const { copyFile } = fs; +const { access, copyFile } = fs; const { COPYFILE_EXCL } = fsConstants; const rimraf = promisify(rimrafCallback); @@ -62,10 +62,10 @@ const getTypescriptSources = () => globby(resolvePath(process.cwd(), 'src/**/*.+ // @ts-ignore const getStylesSources = () => globby(resolvePath(process.cwd(), 'src/**/*.+(scss|css)')); -export const lintPlugin = useSpinner('Linting', async ({ fix }) => { +export const lintPlugin = useSpinner('Linting', async ({ fix } = {}) => { try { // Show a warning if the tslint file exists - await fs.access(resolvePath(process.cwd(), 'tslint.json')); + await access(resolvePath(process.cwd(), 'tslint.json')); console.log('\n'); console.log('--------------------------------------------------------------'); console.log('NOTE: @grafana/toolkit has migrated to use eslint'); @@ -91,7 +91,13 @@ export const lintPlugin = useSpinner('Linting', async ({ fix }) => { fix, }); - const { errorCount, results, warningCount } = cli.executeOnFiles(await getTypescriptSources()); + const report = cli.executeOnFiles(await getTypescriptSources()); + + if (fix) { + CLIEngine.outputFixes(report); + } + + const { errorCount, results, warningCount } = report; if (errorCount > 0 || warningCount > 0) { const formatter = cli.getFormatter();