checkPlugin: Use absolute path when installing `ep_etherpad-lite`

This makes it possible to check plugins that were installed by
symlinking into `node_modules/` like this:

    git clone git@github.com:ether/etherpad-lite.git
    git clone git@github.com:ether/ep_example.git
    cd etherpad-lite
    npm i ep_example@file:../ep_example
    node ./bin/checkPlugin.js ep_example
image-example
Richard Hansen 2021-01-09 19:29:30 -05:00 committed by John McLear
parent b719affe6e
commit 747f323552
1 changed files with 4 additions and 2 deletions

View File

@ -441,8 +441,10 @@ fs.readdir(pluginPath, (err, rootFiles) => {
// if autoFix is enabled. // if autoFix is enabled.
const npmInstall = `npm install${autoFix ? '' : ' --no-package-lock'}`; const npmInstall = `npm install${autoFix ? '' : ' --no-package-lock'}`;
execSync(npmInstall, {stdio: 'inherit'}); execSync(npmInstall, {stdio: 'inherit'});
// The ep_etherpad-lite peer dep must be installed last otherwise `npm install` will nuke it. // The ep_etherpad-lite peer dep must be installed last otherwise `npm install` will nuke it. An
execSync(`${npmInstall} --no-save ep_etherpad-lite@file:../../src`, {stdio: 'inherit'}); // absolute path to etherpad-lite/src is used here so that pluginPath can be a symlink.
execSync(
`${npmInstall} --no-save ep_etherpad-lite@file:${__dirname}/../../src`, {stdio: 'inherit'});
// linting begins // linting begins
try { try {