Skip to content

build: update all non-major dependencies #5713

build: update all non-major dependencies

build: update all non-major dependencies #5713

Workflow file for this run

name: CI
on:
push:
branches:
- main
- '[0-9]+.[0-9]+.x'
# Developers can make one-off pushes to `ci-*` branches to manually trigger full CI
# prior to opening a pull request.
- ci-*
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: {}
defaults:
run:
shell: bash
jobs:
analyze:
runs-on: ubuntu-latest
outputs:
snapshots: ${{ steps.filter.outputs.snapshots }}
steps:
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
with:
persist-credentials: false
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: filter
with:
filters: |
snapshots:
- 'tests/legacy-cli/e2e/ng-snapshot/package.json'
lint:
runs-on: ubuntu-latest
steps:
- name: Initialize environment
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Install node modules
run: yarn install --frozen-lockfile --ignore-scripts
- name: Run ESLint
run: yarn lint --cache-strategy content
- name: Validate NgBot Configuration
run: yarn ng-dev ngbot verify
- name: Validate Circular Dependencies
run: yarn ts-circular-deps check
- name: Run Validation
run: yarn -s admin validate
- name: Check tooling setup
run: yarn -s check-tooling-setup
build:
runs-on: ubuntu-latest
steps:
- name: Initialize environment
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Setup Bazel
uses: angular/dev-infra/github-actions/bazel/setup@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Setup Bazel RBE
uses: angular/dev-infra/github-actions/bazel/configure-remote@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Build release targets
run: yarn ng-dev release build
test:
runs-on: ubuntu-latest
steps:
- name: Initialize environment
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Setup Bazel
uses: angular/dev-infra/github-actions/bazel/setup@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Setup Bazel RBE
uses: angular/dev-infra/github-actions/bazel/configure-remote@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Run module tests
run: yarn bazel test //modules/...
- name: Run package tests
run: yarn bazel test //packages/...
e2e:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
node: [18, 20, 22]
subset: [npm, yarn, esbuild]
shard: [0, 1, 2, 3, 4, 5]
exclude:
# Exclude Node.js v18 when running on a PR
- node: ${{ github.event_name != 'pull_request' && 'none' || '18' }}
# Exclude Node.js v20 when running on a PR
- node: ${{ github.event_name != 'pull_request' && 'none' || '20' }}
# Exclude Windows when running on a PR
- os: ${{ github.event_name != 'pull_request' && 'none' || 'windows-latest' }}
# Skip yarn subset on Windows
- os: windows-latest
subset: yarn
# Skip Node.js v18 tests on Windows
- os: windows-latest
node: 18
# Skip Node.js v20 tests on Windows
- os: windows-latest
node: 20
runs-on: ${{ matrix.os }}
steps:
- name: Initialize environment
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Setup Bazel
uses: angular/dev-infra/github-actions/bazel/setup@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Setup Bazel RBE
uses: angular/dev-infra/github-actions/bazel/configure-remote@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Run CLI E2E tests
run: yarn bazel test --define=E2E_SHARD_TOTAL=6 --define=E2E_SHARD_INDEX=${{ matrix.shard }} --config=e2e //tests/legacy-cli:e2e.${{ matrix.subset }}_node${{ matrix.node }}
e2e-snapshots:
needs: analyze
if: needs.analyze.outputs.snapshots == 'true'
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
node: [18]
subset: [npm, yarn, esbuild]
shard: [0, 1, 2, 3, 4, 5]
runs-on: ${{ matrix.os }}
steps:
- name: Initialize environment
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Setup Bazel
uses: angular/dev-infra/github-actions/bazel/setup@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Setup Bazel RBE
uses: angular/dev-infra/github-actions/bazel/configure-remote@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Run CLI E2E tests
run: yarn bazel test --define=E2E_SHARD_TOTAL=6 --define=E2E_SHARD_INDEX=${{ matrix.shard }} --config=e2e //tests/legacy-cli:e2e.snapshots.${{ matrix.subset }}_node${{ matrix.node }}
browsers:
runs-on: ubuntu-latest
name: Browser Compatibility Tests
env:
SAUCE_TUNNEL_IDENTIFIER: angular-cli-${{ github.workflow }}-${{ github.run_number }}
steps:
- name: Initialize environment
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Setup Bazel
uses: angular/dev-infra/github-actions/bazel/setup@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Setup Bazel RBE
uses: angular/dev-infra/github-actions/bazel/configure-remote@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Run E2E Browser tests
env:
SAUCE_USERNAME: ${{ vars.SAUCE_USERNAME }}
SAUCE_ACCESS_KEY: ${{ secrets.SAUCE_ACCESS_KEY }}
SAUCE_LOG_FILE: /tmp/angular/sauce-connect.log
SAUCE_READY_FILE: /tmp/angular/sauce-connect-ready-file.lock
SAUCE_PID_FILE: /tmp/angular/sauce-connect-pid-file.lock
SAUCE_TUNNEL_IDENTIFIER: 'angular-${{ github.run_number }}'
SAUCE_READY_FILE_TIMEOUT: 120
run: |
./scripts/saucelabs/start-tunnel.sh &
./scripts/saucelabs/wait-for-tunnel.sh
yarn bazel test --config=saucelabs //tests/legacy-cli:e2e.saucelabs
./scripts/saucelabs/stop-tunnel.sh
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
if: ${{ failure() }}
with:
name: sauce-connect-log
path: ${{ env.SAUCE_CONNECT_DIR_IN_HOST }}/sauce-connect.log
publish-snapshots:
runs-on: ubuntu-latest
env:
CIRCLE_BRANCH: ${{ github.ref_name }}
steps:
- name: Initialize environment
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Setup Bazel
uses: angular/dev-infra/github-actions/bazel/setup@89624a6442b75b5cda33c5e9b5c8c4f87ca4f13d
- run: yarn admin snapshots --verbose
env:
SNAPSHOT_BUILDS_GITHUB_TOKEN: ${{ secrets.SNAPSHOT_BUILDS_GITHUB_TOKEN }}