mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
Fail yarn build if any bundle fails to build (#26207)
## Summary
`yarn build` would previously still exit with zero exit code hiding
build errors such as
https://app.circleci.com/pipelines/github/facebook/react/38609/workflows/62a73635-3bf3-4264-8c48-a61844a27764/jobs/630503/parallel-runs/11?filterBy=ALL&invite=true#step-105-17.
These issues are still surfaced due to missing size bot artifacts but
the overall PR status would still be green which we don't want.
Now we just exit with the same exit has a the process of a single build
if it's non-zero.
## How did you test this change?
- [x] fails based on the parent of
62e6c4612e:
https://app.circleci.com/pipelines/github/facebook/react/38681/workflows/654c68ed-cebc-48d4-a156-bac719772f6f/jobs/632166
- [x] passes based on `main`
This commit is contained in:
1 parent
62e6c4612e
commit
bb1e3d0e19
1 file changed
+18
-9
@@ -93,15 +93,24 @@ if (process.env.CIRCLE_NODE_TOTAL) {
|
||||
}
|
||||
|
||||
function buildForChannel(channel, nodeTotal, nodeIndex) {
|
||||
spawnSync('node', ['./scripts/rollup/build.js', ...process.argv.slice(2)], {
|
||||
stdio: ['pipe', process.stdout, process.stderr],
|
||||
env: {
|
||||
...process.env,
|
||||
RELEASE_CHANNEL: channel,
|
||||
CIRCLE_NODE_TOTAL: nodeTotal,
|
||||
CIRCLE_NODE_INDEX: nodeIndex,
|
||||
},
|
||||
});
|
||||
const {status} = spawnSync(
|
||||
'node',
|
||||
['./scripts/rollup/build.js', ...process.argv.slice(2)],
|
||||
{
|
||||
stdio: ['pipe', process.stdout, process.stderr],
|
||||
env: {
|
||||
...process.env,
|
||||
RELEASE_CHANNEL: channel,
|
||||
CIRCLE_NODE_TOTAL: nodeTotal,
|
||||
CIRCLE_NODE_INDEX: nodeIndex,
|
||||
},
|
||||
}
|
||||
);
|
||||
|
||||
if (status !== 0) {
|
||||
// Error of spawned process is already piped to this stderr
|
||||
process.exit(status);
|
||||
}
|
||||
}
|
||||
|
||||
function processStable(buildDir) {
|
||||
|
||||
Reference in new issue
Block a user