Files
fullstack-starter/build.ts
imbytecat e133c006ce refactor: 清理构建流程并引入Bun工具
- 清理旧的输出目录并引入Bun命令行工具以支持构建流程
- 移除构建脚本中多余的删除输出目录命令
2026-01-18 13:59:58 +08:00

39 lines
893 B
TypeScript

import { $ } from 'bun'
await $`rm -rf out`
const targetMap = {
'bun-windows-x64': 'x86_64-pc-windows-msvc',
'bun-darwin-arm64': 'aarch64-apple-darwin',
'bun-darwin-x64': 'x86_64-apple-darwin',
'bun-linux-x64': 'x86_64-unknown-linux-gnu',
'bun-linux-arm64': 'aarch64-unknown-linux-gnu',
} as const
type BunTarget = keyof typeof targetMap
const targets: BunTarget[] = [
'bun-windows-x64',
'bun-darwin-arm64',
'bun-linux-x64',
]
const buildTasks = targets.map((bunTarget) =>
Bun.build({
entrypoints: ['./.output/server/index.mjs'],
compile: {
outfile: `server-${targetMap[bunTarget]}`,
target: bunTarget,
},
outdir: './out',
}),
)
const outputs = await Promise.all(buildTasks)
for (const [index, output] of outputs.entries()) {
const task = buildTasks[index]
if (!task) continue
console.log(output.outputs.map((item) => item.path))
}