diff --git a/packages/grafana-toolkit/bin/grafana-toolkit.dist.js b/packages/grafana-toolkit/bin/grafana-toolkit.dist.js index 5af2295ed75..499bb40d812 100755 --- a/packages/grafana-toolkit/bin/grafana-toolkit.dist.js +++ b/packages/grafana-toolkit/bin/grafana-toolkit.dist.js @@ -1,28 +1,3 @@ #!/usr/bin/env node -const fs = require('fs'); - -const entrypoint = () => { - const defaultEntryPoint = '../src/cli/index.js'; - const toolkitDirectory = `${process.env['PWD']}/node_modules/@grafana/toolkit`; - - // IF we have a toolkit directory AND linked grafana toolkit AND the toolkit dir is a symbolic lik - // THEN run everything in linked mode - if (fs.existsSync(toolkitDirectory)) { - const tkStat = fs.lstatSync(toolkitDirectory); - if (tkStat.isSymbolicLink()) { - console.log('Running in linked mode', `${__dirname}/grafana-toolkit.js`); - return `${__dirname}/grafana-toolkit.js`; - } - } - - // We are using npx, and a relative path does not find index.js - if (!fs.existsSync(defaultEntryPoint) && fs.existsSync(`${__dirname}/../dist/src/cli/index.js`)) { - return `${__dirname}/../dist/src/cli/index.js`; - } - - // The default entrypoint must exist, return it now. - return defaultEntryPoint; -}; - -require(entrypoint()); +require(`${__dirname}/grafana-toolkit.js`); diff --git a/packages/grafana-toolkit/bin/grafana-toolkit.js b/packages/grafana-toolkit/bin/grafana-toolkit.js index 1442f629c2a..1fbedf8ebbb 100755 --- a/packages/grafana-toolkit/bin/grafana-toolkit.js +++ b/packages/grafana-toolkit/bin/grafana-toolkit.js @@ -1,12 +1,39 @@ #!/usr/bin/env node -var path = require('path'); +const fs = require('fs'); +const path = require('path'); -// This bin is used for cli executed internally -var tsProjectPath = path.resolve(__dirname, '../tsconfig.json'); -require('ts-node').register({ - project: tsProjectPath, - transpileOnly: true, -}); +let includeInternalScripts = false; -require('../src/cli/index.ts').run(true); +const entrypoint = () => { + const defaultEntryPoint = '../src/cli/index.js'; + const toolkitDirectory = `${process.env['PWD']}/node_modules/@grafana/toolkit`; + + // IF we have a toolkit directory AND linked grafana toolkit AND the toolkit dir is a symbolic lik + // THEN run everything in linked mode + if (fs.existsSync(toolkitDirectory)) { + const tkStat = fs.lstatSync(toolkitDirectory); + if (tkStat.isSymbolicLink()) { + console.log('Running in linked mode'); + // This bin is used for cli executed internally + var tsProjectPath = path.resolve(__dirname, '../tsconfig.json'); + require('ts-node').register({ + project: tsProjectPath, + transpileOnly: true, + }); + + includeInternalScripts = true; + return '../src/cli/index.ts'; + } + } + + // We are using npx, and a relative path does not find index.js + if (!fs.existsSync(defaultEntryPoint) && fs.existsSync(`${__dirname}/../dist/src/cli/index.js`)) { + return `${__dirname}/../dist/src/cli/index.js`; + } + + // The default entrypoint must exist, return it now. + return defaultEntryPoint; +}; + +require(entrypoint()).run(includeInternalScripts);