ci: prepare pnpm for crabbox hydrate · openclaw/openclaw@716d719
steipete
·
2026-05-27
·
via Recent Commits to openclaw:main
| Original file line number | Diff line number | Diff line change |
|---|
@@ -72,7 +72,24 @@ jobs:
|
72 | 72 | echo "PNPM_HOME=$PNPM_HOME" |
73 | 73 | } >> "$GITHUB_ENV" |
74 | 74 | |
| 75 | + package_manager="$(node -e "const fs = require('node:fs'); const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8')); process.stdout.write(pkg.packageManager || '')")" |
| 76 | + case "$package_manager" in |
| 77 | + pnpm@*) ;; |
| 78 | + *) |
| 79 | + echo "::error::Expected packageManager to pin pnpm, got '${package_manager:-<empty>}'" |
| 80 | + exit 1 |
| 81 | + ;; |
| 82 | + esac |
75 | 83 | corepack enable --install-directory "$PNPM_HOME" |
| 84 | + for attempt in 1 2 3; do |
| 85 | + if corepack prepare "$package_manager" --activate; then |
| 86 | + break |
| 87 | + fi |
| 88 | + if [ "$attempt" = 3 ]; then |
| 89 | + corepack prepare "$package_manager" --activate |
| 90 | + fi |
| 91 | + sleep $((attempt * 5)) |
| 92 | + done |
76 | 93 | node_bin="$(dirname "$(node -p 'process.execPath')")" |
77 | 94 | echo "NODE_BIN=$node_bin" >> "$GITHUB_ENV" |
78 | 95 | echo "$node_bin" >> "$GITHUB_PATH" |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。