This commit is contained in:
+7
-13
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user