Skip to content

Commit 7cc5758

Browse files
committed
[ci] Add yarn_test_build job to gh actions
ghstack-source-id: a8c594d753f454dd0695a1f8028e0a635fb1bc01 Pull Request resolved: #30072
1 parent ec463c5 commit 7cc5758

File tree

4 files changed

+75
-23
lines changed

4 files changed

+75
-23
lines changed

Diff for: .github/workflows/runtime_build.yml

+71-5
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
id: define_release_channels
2727
with:
2828
script: |
29-
return ['stable', 'experimental'];
29+
return ["stable", "experimental"];
3030
3131
build:
3232
name: yarn build
@@ -51,12 +51,14 @@ jobs:
5151
key: ${{ runner.arch }}-${{ runner.os }}-modules-${{ hashFiles('yarn.lock') }}
5252
- run: yarn install --frozen-lockfile
5353
- run: yarn build --b=${{ matrix.bundle_type }} --r=${{ matrix.release_channel }} --ci=github
54+
- name: Display structure of build
55+
run: ls -R build
5456
- name: Archive build
5557
uses: actions/upload-artifact@v4
5658
with:
57-
name: ${{ matrix.bundle_type }}-${{ matrix.release_channel }}
59+
name: ${{ matrix.bundle_type }}_${{ matrix.release_channel }}
5860
path: |
59-
build/**
61+
build
6062
6163
lint_build:
6264
name: yarn lint-build
@@ -65,6 +67,7 @@ jobs:
6567
matrix:
6668
bundle_type: ${{ fromJSON(needs.define_build_params.outputs.bundle_type) }}
6769
release_channel: ${{ fromJSON(needs.define_build_params.outputs.release_channel) }}
70+
continue-on-error: true
6871
runs-on: ubuntu-latest
6972
steps:
7073
- uses: actions/checkout@v4
@@ -79,9 +82,72 @@ jobs:
7982
with:
8083
path: "**/node_modules"
8184
key: ${{ runner.arch }}-${{ runner.os }}-modules-${{ hashFiles('yarn.lock') }}
85+
- run: yarn install --frozen-lockfile
8286
- name: Restore archived build
8387
uses: actions/download-artifact@v4
8488
with:
85-
name: ${{ matrix.bundle_type }}-${{ matrix.release_channel }}
86-
- run: yarn install --frozen-lockfile
89+
name: ${{ matrix.bundle_type }}_${{ matrix.release_channel }}
90+
path: build
91+
- name: Display structure of build
92+
run: ls -R build
8793
- run: yarn lint-build
94+
95+
test_build:
96+
name: yarn test-build
97+
needs: build
98+
strategy:
99+
matrix:
100+
test_params: [
101+
# Intentionally passing these as strings instead of creating a
102+
# separate parameter per CLI argument, since it's easier to
103+
# control/see which combinations we want to run.
104+
-r=stable --env=development,
105+
-r=stable --env=production,
106+
-r=experimental --env=development,
107+
-r=experimental --env=production,
108+
109+
# Dev Tools
110+
--project=devtools -r=experimental,
111+
112+
# TODO: Update test config to support www build tests
113+
# - "-r=www-classic --env=development --variant=false"
114+
# - "-r=www-classic --env=production --variant=false"
115+
# - "-r=www-classic --env=development --variant=true"
116+
# - "-r=www-classic --env=production --variant=true"
117+
# - "-r=www-modern --env=development --variant=false"
118+
# - "-r=www-modern --env=production --variant=false"
119+
# - "-r=www-modern --env=development --variant=true"
120+
# - "-r=www-modern --env=production --variant=true"
121+
122+
# TODO: Update test config to support xplat build tests
123+
# - "-r=xplat --env=development --variant=false"
124+
# - "-r=xplat --env=development --variant=true"
125+
# - "-r=xplat --env=production --variant=false"
126+
# - "-r=xplat --env=production --variant=true"
127+
128+
# TODO: Test more persistent configurations?
129+
]
130+
continue-on-error: true
131+
runs-on: ubuntu-latest
132+
steps:
133+
- uses: actions/checkout@v4
134+
- uses: actions/setup-node@v4
135+
with:
136+
node-version: 18.x
137+
cache: "yarn"
138+
cache-dependency-path: yarn.lock
139+
- name: Restore cached node_modules
140+
uses: actions/cache@v4
141+
id: node_modules
142+
with:
143+
path: "**/node_modules"
144+
key: ${{ runner.arch }}-${{ runner.os }}-modules-${{ hashFiles('yarn.lock') }}
145+
- run: yarn install --frozen-lockfile
146+
- name: Restore archived build
147+
uses: actions/download-artifact@v4
148+
with:
149+
path: build-temp
150+
- name: Display structure of build
151+
run: ls -R build-temp
152+
# - run: yarn test --build ${{ matrix.test_params }} --ci=github
153+

Diff for: packages/react-devtools-shared/src/__tests__/storeStressTestConcurrent-test.js

+2
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ describe('StoreStressConcurrent', () => {
1616
let store;
1717
let print;
1818

19+
jest.setTimeout(15000);
20+
1921
beforeEach(() => {
2022
global.IS_REACT_ACT_ENVIRONMENT = true;
2123

Diff for: packages/shared/ReactVersion.js

+1-15
Original file line numberDiff line numberDiff line change
@@ -1,15 +1 @@
1-
/**
2-
* Copyright (c) Meta Platforms, Inc. and affiliates.
3-
*
4-
* This source code is licensed under the MIT license found in the
5-
* LICENSE file in the root directory of this source tree.
6-
*/
7-
8-
// TODO: this is special because it gets imported during build.
9-
//
10-
// It exists as a placeholder so that DevTools can support work tag changes between releases.
11-
// When we next publish a release, update the matching TODO in backend/renderer.js
12-
// TODO: This module is used both by the release scripts and to expose a version
13-
// at runtime. We should instead inject the version number as part of the build
14-
// process, and use the ReactVersions.js module as the single source of truth.
15-
export default '19.0.0';
1+
export default '19.0.0-rc-3a600d54b3-20240624';

Diff for: scripts/rollup/build-ghaction.js

+1-3
Original file line numberDiff line numberDiff line change
@@ -846,9 +846,7 @@ async function buildEverything(bundleTypeToBuild) {
846846
);
847847

848848
await Promise.all(
849-
bundles.map(([bundle, bundleType]) => {
850-
return createBundle(bundle, bundleType);
851-
})
849+
bundles.map(([bundle, bundleType]) => createBundle(bundle, bundleType))
852850
);
853851

854852
await Packaging.copyAllShims();

0 commit comments

Comments
 (0)