test: add resolve/test/list-exports
to false positive in postinstal…
#44
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: CI | |
on: | |
push: | |
branches: | |
- main | |
- '[0-9]+.[0-9]+.x' | |
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@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Install node modules | |
run: yarn install --immutable | |
- name: Generate JSON schema types | |
# Schema types are required to correctly lint the TypeScript code | |
run: yarn admin build-schema | |
- 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 admin validate | |
- name: Check tooling setup | |
run: yarn check-tooling-setup | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Initialize environment | |
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Setup Bazel RBE | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Install node modules | |
run: yarn install --immutable | |
- 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@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Setup Bazel RBE | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Install node modules | |
run: yarn install --immutable | |
- name: Run module and package tests | |
run: yarn bazel test //modules/... //packages/... | |
env: | |
ASPECT_RULES_JS_FROZEN_PNPM_LOCK: '1' | |
e2e: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, windows-latest] | |
node: [18, 20, 22] | |
subset: [npm, esbuild] | |
shard: [0, 1, 2, 3, 4, 5] | |
exclude: | |
# 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: | |
# Workaround for: https://github.com/bazel-contrib/bazel-lib/issues/968. | |
# TODO(devversion): Remove when Aspect lib issue is fixed. | |
- run: choco install gzip | |
if: ${{matrix.os == 'windows-latest'}} | |
- name: Initialize environment | |
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Install node modules | |
run: yarn install --immutable | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Setup Bazel RBE | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- 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-package-managers: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest] | |
node: [22] | |
subset: [yarn, pnpm] | |
shard: [0, 1, 2] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Initialize environment | |
uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Install node modules | |
run: yarn install --immutable | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Setup Bazel RBE | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Run CLI E2E tests | |
run: yarn bazel test --define=E2E_SHARD_TOTAL=3 --define=E2E_SHARD_INDEX=${{ matrix.shard }} --config=e2e //tests/legacy-cli:e2e.${{ matrix.subset }}_node${{ matrix.node }} | |
e2e-snapshots: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest] | |
node: [18] | |
subset: [npm, 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@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Install node modules | |
run: yarn install --immutable | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Setup Bazel RBE | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- 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@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Install node modules | |
run: yarn install --immutable | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Setup Bazel RBE | |
uses: angular/dev-infra/github-actions/bazel/configure-remote@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- 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@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.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@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- name: Install node modules | |
run: yarn install --immutable | |
- name: Setup Bazel | |
uses: angular/dev-infra/github-actions/bazel/setup@36b7540c8baf768285e55e02cb440c5e1eb658fa | |
- run: yarn admin snapshots --verbose | |
env: | |
SNAPSHOT_BUILDS_GITHUB_TOKEN: ${{ secrets.SNAPSHOT_BUILDS_GITHUB_TOKEN }} |