Skip to content

Naming scheme + Adjusted mutation score used by mutation levels #10852

Naming scheme + Adjusted mutation score used by mutation levels

Naming scheme + Adjusted mutation score used by mutation levels #10852

Workflow file for this run

name: CI
on:
push:
branches: [master]
pull_request:
types: [synchronize, opened, reopened]
env:
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
jobs:
build_and_test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
node-version: [18.x, 20.x]
os: [ubuntu-latest, windows-latest]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: nrwl/nx-set-shas@v4
with:
main-branch-name: master
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 21
cache: 'sbt'
- run: npm ci
# Only install playwright if elements project is affected
- name: affected
id: affected
shell: bash
run: echo "affected=$(npx nx show projects --affected --json)" >> "$GITHUB_OUTPUT"
- name: Install Playwright Browsers
if: ${{ contains(fromJson(steps.affected.outputs.affected), 'elements') }}
run: npx playwright install chromium firefox --with-deps
- name: Lint & Build & Test
run: npm run all
- name: Bundlemon
if: ${{ contains(fromJson(steps.affected.outputs.affected), 'elements') && matrix.os == 'ubuntu-latest' && matrix.node-version == '20.x' }}
uses: lironer/bundlemon-action@v1
with:
working-directory: packages/elements
- uses: actions/upload-artifact@v4
if: failure()
with:
name: image-diffs
path: packages/elements/playwright-report/
incremental_mutation_testing:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm ci
- run: npm run download-incremental-reports
- name: Run Stryker incrementally
run: |
npx nx run-many --target=stryker --projects=metrics,elements -- --incremental
env:
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}