Skip to content

Commit c24a04d

Browse files
Merge pull request #243 from angular/main
Create a new pull request by comparing changes across two branches
2 parents d1ba1a9 + 13c1306 commit c24a04d

File tree

1,112 files changed

+21056
-5822
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,112 files changed

+21056
-5822
lines changed
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: 'Saucelabs legacy test job'
2+
description: 'Runs tests against Saucelabs (outside of Bazel)'
3+
4+
runs:
5+
using: 'composite'
6+
steps:
7+
- name: Setup Bazel
8+
uses: angular/dev-infra/github-actions/bazel/setup@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
9+
- name: Setup Saucelabs Variables
10+
uses: angular/dev-infra/github-actions/saucelabs@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
11+
- name: Starting Saucelabs tunnel service
12+
shell: bash
13+
run: ./tools/saucelabs/sauce-service.sh run &
14+
# Build test fixtures for a test that rely on Bazel-generated fixtures. Note that disabling
15+
# specific tests which are reliant on such generated fixtures is not an option as SystemJS
16+
# in the Saucelabs legacy job always fetches referenced files, even if the imports would be
17+
# guarded by an check to skip in the Saucelabs legacy job. We should be good running such
18+
# test in all supported browsers on Saucelabs anyway until this job can be removed.
19+
- name: Preparing Bazel-generated fixtures required in legacy tests
20+
shell: bash
21+
run: |
22+
yarn bazel build //packages/core/test:downleveled_es5_fixture //packages/common/locales
23+
# Needed for the ES5 downlevel reflector test in `packages/core/test/reflection`.
24+
mkdir -p dist/legacy-test-out/core/test/reflection/
25+
cp dist/bin/packages/core/test/reflection/es5_downleveled_inheritance_fixture.js \
26+
dist/legacy-test-out/core/test/reflection/es5_downleveled_inheritance_fixture.js
27+
# Locale files are needed for i18n tests running within Saucelabs. These are added
28+
# directly as sources so that the TypeScript compilation of `/packages/tsconfig.json`
29+
# can succeed. Note that the base locale and currencies files are checked-in, so
30+
# we do not need to re-generate those through Bazel.
31+
mkdir -p packages/common/locales/extra
32+
cp dist/bin/packages/common/locales/*.ts packages/common/locales
33+
cp dist/bin/packages/common/locales/extra/*.ts packages/common/locales/extra
34+
- name: Build bundle of tests to run on Saucelabs
35+
shell: bash
36+
run: node tools/legacy-saucelabs/build-saucelabs-test-bundle.mjs
37+
- name: Wait and confirm Saucelabs tunnel has connected
38+
shell: bash
39+
run: ./tools/saucelabs/sauce-service.sh ready-wait
40+
- name: Running tests on Saucelabs.
41+
shell: bash
42+
run: KARMA_WEB_TEST_MODE=SL_REQUIRED yarn karma start ./karma-js.conf.js --single-run
43+
- name: Stop Saucelabs tunnel service
44+
shell: bash
45+
run: ./tools/saucelabs/sauce-service.sh stop

.github/workflows/ci.yml

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CI
1+
name: CI (push)
22

33
on:
44
push:
@@ -152,31 +152,18 @@ jobs:
152152
- run: yarn --cwd packages/zone.js/test/typings install --frozen-lockfile --non-interactive
153153
- run: yarn --cwd packages/zone.js/test/typings test
154154

155-
bazel-saucelabs:
155+
saucelabs:
156156
runs-on: ubuntu-latest-4core
157157
env:
158-
JOBS: 2
158+
SAUCE_TUNNEL_IDENTIFIER: angular-framework-${{ github.run_number }}
159159
steps:
160160
- name: Initialize environment
161161
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
162162
with:
163163
cache-node-modules: true
164164
- name: Install node modules
165165
run: yarn install --frozen-lockfile
166-
- name: Setup Bazel
167-
uses: angular/dev-infra/github-actions/bazel/setup@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
168-
- name: Setup Bazel Remote Caching
169-
uses: angular/dev-infra/github-actions/bazel/configure-remote@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
170-
- name: Setup Saucelabs Variables
171-
uses: angular/dev-infra/github-actions/saucelabs@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
172-
- name: Set up Sauce Tunnel Daemon
173-
run: yarn bazel run //tools/saucelabs-daemon/background-service -- $JOBS &
174-
env:
175-
SAUCE_TUNNEL_IDENTIFIER: angular-framework-${{ github.run_number }}
176-
- name: Run all saucelabs bazel tests
177-
run: |
178-
TESTS=$(./node_modules/.bin/bazelisk query --output label '(kind(karma_web_test, ...) intersect attr("tags", "saucelabs", ...)) except attr("tags", "fixme-saucelabs", ...)')
179-
yarn bazel test --config=saucelabs --jobs=$JOBS ${TESTS}
166+
- uses: ./.github/actions/saucelabs-legacy
180167

181168
adev-deploy:
182169
needs: [adev]

.github/workflows/manual.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Manual jobs
2+
3+
on:
4+
workflow_dispatch:
5+
inputs: {}
6+
7+
jobs:
8+
# Bazel saucelabs job resides in `manual.yml` because it's currently unstable, but
9+
# kept as "runnable" for debugging/stabilization effort purposes.
10+
bazel-saucelabs:
11+
runs-on: ubuntu-latest-4core
12+
env:
13+
JOBS: 2
14+
steps:
15+
- name: Initialize environment
16+
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
17+
with:
18+
cache-node-modules: true
19+
- name: Install node modules
20+
run: yarn install --frozen-lockfile
21+
- name: Setup Bazel
22+
uses: angular/dev-infra/github-actions/bazel/setup@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
23+
- name: Setup Bazel Remote Caching
24+
uses: angular/dev-infra/github-actions/bazel/configure-remote@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
25+
- name: Setup Saucelabs Variables
26+
uses: angular/dev-infra/github-actions/saucelabs@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
27+
- name: Set up Sauce Tunnel Daemon
28+
run: yarn bazel run //tools/saucelabs-daemon/background-service -- $JOBS &
29+
env:
30+
SAUCE_TUNNEL_IDENTIFIER: angular-framework-${{ github.run_number }}
31+
- name: Run all saucelabs bazel tests
32+
run: |
33+
TESTS=$(./node_modules/.bin/bazelisk query --output label '(kind(karma_web_test, ...) intersect attr("tags", "saucelabs", ...)) except attr("tags", "fixme-saucelabs", ...)')
34+
yarn bazel test --config=saucelabs --jobs=$JOBS ${TESTS}

.github/workflows/pr.yml

Lines changed: 1 addition & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -174,37 +174,4 @@ jobs:
174174
cache-node-modules: true
175175
- name: Install node modules
176176
run: yarn install --frozen-lockfile
177-
- name: Setup Bazel
178-
uses: angular/dev-infra/github-actions/bazel/setup@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
179-
- name: Setup Saucelabs Variables
180-
uses: angular/dev-infra/github-actions/saucelabs@8d3cb7b9e1b3edd1dc168376689d27407d2dfa7a
181-
- name: Starting Saucelabs tunnel service
182-
run: ./tools/saucelabs/sauce-service.sh run &
183-
# Build test fixtures for a test that rely on Bazel-generated fixtures. Note that disabling
184-
# specific tests which are reliant on such generated fixtures is not an option as SystemJS
185-
# in the Saucelabs legacy job always fetches referenced files, even if the imports would be
186-
# guarded by an check to skip in the Saucelabs legacy job. We should be good running such
187-
# test in all supported browsers on Saucelabs anyway until this job can be removed.
188-
- name: Preparing Bazel-generated fixtures required in legacy tests
189-
run: |
190-
yarn bazel build //packages/core/test:downleveled_es5_fixture //packages/common/locales
191-
# Needed for the ES5 downlevel reflector test in `packages/core/test/reflection`.
192-
mkdir -p dist/legacy-test-out/core/test/reflection/
193-
cp dist/bin/packages/core/test/reflection/es5_downleveled_inheritance_fixture.js \
194-
dist/legacy-test-out/core/test/reflection/es5_downleveled_inheritance_fixture.js
195-
# Locale files are needed for i18n tests running within Saucelabs. These are added
196-
# directly as sources so that the TypeScript compilation of `/packages/tsconfig.json`
197-
# can succeed. Note that the base locale and currencies files are checked-in, so
198-
# we do not need to re-generate those through Bazel.
199-
mkdir -p packages/common/locales/extra
200-
cp dist/bin/packages/common/locales/*.ts packages/common/locales
201-
cp dist/bin/packages/common/locales/extra/*.ts packages/common/locales/extra
202-
- name: Build bundle of tests to run on Saucelabs
203-
run: node tools/legacy-saucelabs/build-saucelabs-test-bundle.mjs
204-
- name: Wait and confirm Saucelabs tunnel has connected
205-
run: ./tools/saucelabs/sauce-service.sh ready-wait
206-
timeout-minutes: 3
207-
- name: Running tests on Saucelabs.
208-
run: KARMA_WEB_TEST_MODE=SL_REQUIRED yarn karma start ./karma-js.conf.js --single-run
209-
- name: Stop Saucelabs tunnel service
210-
run: ./tools/saucelabs/sauce-service.sh stop
177+
- uses: ./.github/actions/saucelabs-legacy

.github/workflows/scorecard.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,14 @@ jobs:
3939

4040
# Upload the results as artifacts.
4141
- name: 'Upload artifact'
42-
uses: actions/upload-artifact@604373da6381bf24206979c74d06a550515601b9 # v4.4.1
42+
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
4343
with:
4444
name: SARIF file
4545
path: results.sarif
4646
retention-days: 5
4747

4848
# Upload the results to GitHub's code scanning dashboard.
4949
- name: 'Upload to code-scanning'
50-
uses: github/codeql-action/upload-sarif@c36620d31ac7c881962c3d9dd939c40ec9434f2b # v3.26.12
50+
uses: github/codeql-action/upload-sarif@f779452ac5af1c261dce0346a8f964149f49322b # v3.26.13
5151
with:
5252
sarif_file: results.sarif

0 commit comments

Comments
 (0)