fix: make pnpm installation script fail fast #594
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
When building a custom image via
frappe_dockerwith drive included inapps.json,bench initfails during asset building with a confusingexit code 127 from Yarn.
The root cause:
install-pnpm.shunconditionally exits 0 even whennpm install -g pnpm@latest-10silently fails (e.g. in minimal Dockerimages where global installs can behave unexpectedly). The build then
continues into
pnpm install && pnpm buildwith no pnpm binaryavailable, which blows up deep in the Yarn/bench build chain.
The log looks like this:
pnpm could not be found, installing...
pnpm version:
...
status: 127
error Command failed with exit code 1.
Fix
set -euo pipefailso failures aren't silently swallowed.continuing. If it's not, exit 1 with a clear message instead of
letting the build proceed and fail later with a misleading error.
exit 0at the end.