unplugin/scripts/buildFixtures.ts
2022-10-31 21:57:36 +08:00

34 lines
1.3 KiB
TypeScript

import { join, resolve } from 'path'
import { execSync } from 'child_process'
import fs from 'fs-extra'
import c from 'picocolors'
async function run() {
const dir = resolve(__dirname, '../test/fixtures')
let fixtures = await fs.readdir(dir)
if (process.argv[2])
fixtures = fixtures.filter(i => i.includes(process.argv[2]))
for (const name of fixtures) {
const path = join(dir, name)
if (fs.existsSync(join(path, 'dist')))
await fs.remove(join(path, 'dist'))
console.log(c.yellow(c.inverse(c.bold('\n Vite '))), name, '\n')
execSync('npx vite --version', { cwd: path, stdio: 'inherit' })
execSync('npx vite build', { cwd: path, stdio: 'inherit' })
console.log(c.red(c.inverse(c.bold('\n Rollup '))), name, '\n')
execSync('npx rollup --version', { cwd: path, stdio: 'inherit' })
execSync('npx rollup --bundleConfigAsCjs -c', { cwd: path, stdio: 'inherit' })
console.log(c.blue(c.inverse(c.bold('\n Webpack '))), name, '\n')
execSync('npx webpack --version', { cwd: path, stdio: 'inherit' })
execSync('npx webpack', { cwd: path, stdio: 'inherit' })
console.log(c.yellow(c.inverse(c.bold('\n Esbuild '))), name, '\n')
execSync('npx esbuild --version', { cwd: path, stdio: 'inherit' })
execSync('node esbuild.config.js', { cwd: path, stdio: 'inherit' })
}
}
run()