mirror of
https://github.com/pnpm/pnpm.git
synced 2026-03-23 09:31:52 -04:00
29 lines
1016 B
TypeScript
29 lines
1016 B
TypeScript
import fs from 'fs'
|
|
import * as execa from 'execa'
|
|
import path from 'path'
|
|
import makeEmptyDir from 'make-empty-dir'
|
|
|
|
const repoRoot = path.join(__dirname, '../../..')
|
|
const dest = path.join(repoRoot, 'dist')
|
|
const artifactsDir = path.join(repoRoot, 'packages/artifacts')
|
|
|
|
;(async () => { // eslint-disable-line
|
|
await makeEmptyDir(dest)
|
|
if (!fs.existsSync(path.join(artifactsDir, 'linux-x64/pnpm'))) {
|
|
execa.sync('pnpm', ['run', 'prepublishOnly', '--filter', '@pnpm/exe'], {
|
|
cwd: repoRoot,
|
|
stdio: 'inherit',
|
|
})
|
|
}
|
|
copyArtifact('linux-x64/pnpm', 'pnpm-linux-x64')
|
|
copyArtifact('linuxstatic-x64/pnpm', 'pnpm-linuxstatic-x64')
|
|
copyArtifact('linux-arm64/pnpm', 'pnpm-linux-arm64')
|
|
copyArtifact('macos-x64/pnpm', 'pnpm-macos-x64')
|
|
copyArtifact('macos-arm64/pnpm', 'pnpm-macos-arm64')
|
|
copyArtifact('win-x64/pnpm.exe', 'pnpm-win-x64.exe')
|
|
})()
|
|
|
|
function copyArtifact (srcName: string, destName: string) {
|
|
fs.copyFileSync(path.join(artifactsDir, srcName), path.join(dest, destName))
|
|
}
|