2
0
mirror of https://github.com/tenrok/BBob.git synced 2026-05-15 11:59:37 +03:00
Files
bbob/scripts/pkg-task
T
Nikolay Kost 2d1a08ba9a chore: update build system and dependencies (#155)
* chore: fix swc + rollup transform

* chore: fix pkg-task args parsing

* chore: update lerna, rollup and swc to build proper es6 files

* chore: fix swc build for es targets

* ci: nodes matrix to newest versions

* ci: rollup to mjs, swc to json

* ci: add canary publish

* ci: no git tag for canary

* ci: no private publish for canary

* ci: remove --canary from publish-canary

* fix: remove gitHead from package.json

* fix: tests setup

* fix: bbob plugin helper imports

* fix: plugin helper build priority and circular deps

* fix: add nx for parallel build

* fix: npm ci

* fix: code ql

* fix: remove exports directive

* fix: rollup build

* fix: vue2 test and minify

* fix: bundle size limits

* feat: bundlephobia pr review

* feat: bundlephobia more popular action

* feat: publish branch to npm

* fix: secret NPM token

* fix: bundlephobia version

* fix: remove bundlephobia checker

* fix: npm publish in PR

* chore: release 2.8.3

* chore: fix test runs on CI, removed 14.x version

* fix: sync package-lock

* fix: remove lock files in sub packages

* fix: bundlesize > bundlesize2

* fix: update lock files

* fix: lock file in vue2-example
2022-12-18 03:09:56 +02:00

45 lines
1.1 KiB
JavaScript
Executable File

#!/usr/bin/env node
'use strict';
const { resolve } = require('path')
const { spawn } = require('child_process')
const pkg = require(resolve(__dirname, '../package.json'))
const nmBinDir = resolve(__dirname, '../node_modules/.bin/')
const shell = { cmd: 'sh', arg: '-c' }
// replace all @/ to node modules bin dir
const replaceTokens = str => String(str).replace(new RegExp('@\\/', 'gi'), `${nmBinDir}/`)
function runCommand(command, args = '') {
const proc = spawn(shell.cmd, [shell.arg, `${replaceTokens(command)} ${args}`], {
env: process.env,
cwd: process.cwd(),
stdio: 'inherit',
})
proc.on('close', (code) => {
if (code !== 0) {
console.log(`command:"${command}" exited with code ${code}`);
}
process.exit(code)
});
}
function runCommandByKey(key, command) {
const args = process.argv.slice(2);
if (args.length >= 1) {
const [name, ...argarr] = args
if (name === key) {
return runCommand(command, argarr.join(' '))
}
}
}
for (const [key, command] of Object.entries(pkg.pkgTasks)) {
runCommandByKey(key, command)
}