[Snyk] Security upgrade karma from 4.4.0 to 5.0.8 #16
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Pull Request | |
on: | |
pull_request: | |
types: [opened, synchronize, reopened] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
permissions: {} | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Initialize environment | |
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
with: | |
cache-node-modules: true | |
- name: Install node modules | |
run: yarn install --frozen-lockfile | |
- name: Check code lint | |
run: yarn -s tslint | |
- name: Check for circular dependencies | |
run: yarn -s ts-circular-deps:check | |
- name: Validate pull approve configuration | |
run: yarn -s ng-dev pullapprove verify | |
- name: Validate angular robot configuration | |
run: yarn -s ng-dev ngbot verify | |
- name: Confirm code builds with typescript as expected | |
run: yarn -s check-tooling-setup | |
- name: Check commit message | |
run: yarn ng-dev commit-message validate-range ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} | |
- name: Check code format | |
run: yarn ng-dev format changed --check ${{ github.event.pull_request.base.sha }} | |
devtools: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Initialize environment | |
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
with: | |
cache-node-modules: true | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Setup Bazel RBE | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Install node modules | |
run: yarn install --frozen-lockfile | |
- name: Run unit tests | |
run: yarn devtools:test | |
- name: Test build | |
run: yarn devtools:build:chrome | |
test: | |
runs-on: ubuntu-latest-4core | |
steps: | |
- name: Initialize environment | |
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
with: | |
cache-node-modules: true | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Setup Bazel Remote Caching | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Install node modules | |
run: yarn install --frozen-lockfile --network-timeout 100000 | |
- name: Run CI tests for framework | |
run: yarn test:ci | |
adev: | |
runs-on: | |
labels: ubuntu-latest-4core | |
steps: | |
- name: Initialize environment | |
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Setup Bazel RBE | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Install node modules | |
run: yarn install --frozen-lockfile | |
- name: Build adev in fast mode to ensure it continues to work | |
run: yarn bazel build //adev:build --fast_adev --config=release | |
- name: Run tests | |
run: yarn bazel test //adev:test | |
zone-js: | |
runs-on: | |
labels: ubuntu-latest-4core | |
steps: | |
- name: Initialize environment | |
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
with: | |
cache-node-modules: true | |
node-module-directories: | | |
./node_modules | |
./packages/zone.js/node_modules | |
./packages/zone.js/test/typings/node_modules | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Setup Bazel RBE | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Install node modules | |
run: yarn install --frozen-lockfile | |
- run: | | |
yarn bazel build \ | |
//packages/zone.js/bundles:zone.umd.js \ | |
//packages/zone.js:npm_package \ | |
//packages/zone.js/test/closure:closure_js \ | |
- run: | | |
rm -Rf packages/zone.js/build | |
rm -Rf packages/zone.js/test/extra/*.umd.js | |
mkdir -p packages/zone.js/build/ | |
mkdir -p packages/zone.js/build/test/ | |
cp dist/bin/packages/zone.js/bundles/zone.umd.js packages/zone.js/build/zone.umd.js | |
cp dist/bin/packages/zone.js/npm_package/bundles/zone-mix.umd.js ./packages/zone.js/test/extra/ | |
cp dist/bin/packages/zone.js/npm_package/bundles/zone-patch-electron.umd.js ./packages/zone.js/test/extra/ | |
cp dist/bin/packages/zone.js/test/closure/zone.closure.mjs ./packages/zone.js/build/test/zone.closure.mjs | |
# Install | |
- run: yarn --cwd packages/zone.js install --frozen-lockfile --non-interactive | |
# Run zone.js tools tests | |
- run: yarn --cwd packages/zone.js promisefinallytest | |
- run: yarn --cwd packages/zone.js jest:test | |
- run: yarn --cwd packages/zone.js jest:nodetest | |
- run: yarn --cwd packages/zone.js electrontest | |
- run: yarn --cwd packages/zone.js/test/typings install --frozen-lockfile --non-interactive | |
- run: yarn --cwd packages/zone.js/test/typings test | |
saucelabs: | |
runs-on: ubuntu-latest-4core | |
env: | |
SAUCE_TUNNEL_IDENTIFIER: angular-framework-${{ github.run_number }} | |
steps: | |
- name: Initialize environment | |
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
with: | |
cache-node-modules: true | |
- name: Install node modules | |
run: yarn install --frozen-lockfile | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Setup Saucelabs Variables | |
uses: angular/dev-infra/github-actions/saucelabs@1ebf18a3a60b182a3dbad12e9a149fd93af5c29b | |
- name: Starting Saucelabs tunnel service | |
run: ./tools/saucelabs/sauce-service.sh run & | |
# Build test fixtures for a test that rely on Bazel-generated fixtures. Note that disabling | |
# specific tests which are reliant on such generated fixtures is not an option as SystemJS | |
# in the Saucelabs legacy job always fetches referenced files, even if the imports would be | |
# guarded by an check to skip in the Saucelabs legacy job. We should be good running such | |
# test in all supported browsers on Saucelabs anyway until this job can be removed. | |
- name: Preparing Bazel-generated fixtures required in legacy tests | |
run: | | |
yarn bazel build //packages/core/test:downleveled_es5_fixture //packages/common/locales | |
# Needed for the ES5 downlevel reflector test in `packages/core/test/reflection`. | |
mkdir -p dist/legacy-test-out/core/test/reflection/ | |
cp dist/bin/packages/core/test/reflection/es5_downleveled_inheritance_fixture.js \ | |
dist/legacy-test-out/core/test/reflection/es5_downleveled_inheritance_fixture.js | |
# Locale files are needed for i18n tests running within Saucelabs. These are added | |
# directly as sources so that the TypeScript compilation of `/packages/tsconfig.json` | |
# can succeed. Note that the base locale and currencies files are checked-in, so | |
# we do not need to re-generate those through Bazel. | |
mkdir -p packages/common/locales/extra | |
cp dist/bin/packages/common/locales/*.ts packages/common/locales | |
cp dist/bin/packages/common/locales/extra/*.ts packages/common/locales/extra | |
- name: Build bundle of tests to run on Saucelabs | |
run: node tools/legacy-saucelabs/build-saucelabs-test-bundle.mjs | |
- name: Wait and confirm Saucelabs tunnel has connected | |
run: ./tools/saucelabs/sauce-service.sh ready-wait | |
timeout-minutes: 3 | |
- name: Running tests on Saucelabs. | |
run: KARMA_WEB_TEST_MODE=SL_REQUIRED yarn karma start ./karma-js.conf.js --single-run | |
- name: Stop Saucelabs tunnel service | |
run: ./tools/saucelabs/sauce-service.sh stop |