enable approved pnpm dependency builds
continuous-integration/drone Build is failing

This commit is contained in:
曾志威
2026-08-11 01:34:02 +08:00
parent aaed0150f0
commit 859dacf0bc
+7 -13
View File
@@ -34,23 +34,17 @@ steps:
- |
node <<'NODE'
const fs = require('fs')
const packageJson = JSON.parse(fs.readFileSync('package.json', 'utf8'))
const allowed = packageJson.pnpm?.onlyBuiltDependencies
const workspacePath = 'pnpm-workspace.yaml'
const workspace = fs.readFileSync(workspacePath, 'utf8')
const updated = workspace.replace(
/: set this to true or false$/gm,
': true',
)
if (!Array.isArray(allowed) || allowed.length === 0) {
throw new Error('package.json does not define pnpm.onlyBuiltDependencies')
}
if (!/^onlyBuiltDependencies\s*:/m.test(workspace)) {
const setting = [
'',
'onlyBuiltDependencies:',
...allowed.map((name) => ' - ' + JSON.stringify(name)),
'',
].join('\n')
fs.appendFileSync(workspacePath, setting)
if (updated === workspace) {
throw new Error('pnpm-workspace.yaml has no allowBuilds placeholders')
}
fs.writeFileSync(workspacePath, updated)
NODE
- pnpm config set store-dir /cache/cbt-ui/pnpm-store
- sh install.sh