chore(deps-dev): bump the lint group with 7 updates #10673
Workflow file for this run
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: Build | |
on: | |
push: | |
branches: | |
- master | |
paths: | |
- '.github/actions/build-setup/**/*' | |
- '.github/workflows/build.yml' | |
- 'config/**/*' | |
- 'scripts/**/*' | |
- 'src/**/*' | |
- 'test/*' # root folder | |
- 'test/config/**/*' | |
- 'test/fixtures/**/*' | |
- 'test/integration/**/*' | |
- 'test/performance/**/*' # performance tests are built here | |
- 'test/shared/**/*' | |
- 'test/unit/**/*' | |
- '.eslintrc.js' | |
- '.nvmrc' | |
- '.prettierrc.js' | |
- 'package.json' | |
- 'package-lock.json' | |
- 'tsconfig.json' | |
pull_request: | |
branches: | |
- master | |
paths: | |
- '.github/actions/build-setup/**/*' | |
- '.github/workflows/build.yml' | |
- 'config/**/*' | |
- 'scripts/**/*' | |
- 'src/**/*' | |
- 'test/*' # root folder | |
- 'test/config/**/*' | |
- 'test/fixtures/**/*' | |
- 'test/integration/**/*' | |
- 'test/performance/**/*' # performance tests are built here | |
- 'test/shared/**/*' | |
- 'test/unit/**/*' | |
- '.eslintrc.js' | |
- '.nvmrc' | |
- '.prettierrc.js' | |
- 'package.json' | |
- 'package-lock.json' | |
- 'tsconfig.json' | |
jobs: | |
build: | |
runs-on: ${{ matrix.os.name }} | |
strategy: | |
# we want to run the full build on all os: don't cancel running jobs even if one fails | |
fail-fast: false | |
matrix: | |
# syntax inspired from https://github.community/t5/GitHub-Actions/Using-a-matrix-defined-input-for-a-custom-action/m-p/32032/highlight/true#M988 | |
os: | |
- { name: ubuntu-22.04, coverage: '-- --coverage' } | |
- { name: macos-13 } | |
- { name: windows-2022 } | |
permissions: | |
# SonarCloud: checks and pull-requests | |
checks: write | |
pull-requests: write | |
steps: | |
- name: Checkout with shallow clone | |
uses: actions/checkout@v4 | |
if: ${{ !contains(matrix.os.coverage, 'coverage') }} | |
- name: Checkout without shallow clone | |
uses: actions/checkout@v4 | |
if: ${{ contains(matrix.os.coverage, 'coverage') }} | |
with: | |
# Disabling shallow clone is recommended for improving relevancy of SonarCloud reporting | |
fetch-depth: 0 | |
- name: Build Setup | |
uses: ./.github/actions/build-setup | |
- name: Lint check | |
run: npm run lint-check | |
- name: Build Application | |
run: npm run build | |
- name: Test Application | |
id: 'test_unit' | |
run: npm run test:unit ${{ matrix.os.coverage }} | |
- name: Upload unit test results | |
if: ${{ failure() && steps.test_unit.outcome == 'failure' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: unit-test-results-${{matrix.os.name}}-${{github.sha}} | |
path: build/test-report/unit | |
- name: Test Application Integration | |
id: 'test_integration' | |
run: npm run test:integration ${{ matrix.os.coverage }} | |
- name: Upload integration test results | |
if: ${{ failure() && steps.test_integration.outcome == 'failure' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: integration-test-results-${{matrix.os.name}}-${{github.sha}} | |
path: build/test-report/integration | |
# Ensure we don't break scripts | |
- name: Build and test utils | |
run: npm run utils-all | |
# Ensure we don't break performance tests code | |
- name: Check performance tests compilation | |
run: npm run test:perf:compile | |
# No need to run the analysis from all environments | |
- name: SonarCloud Scan | |
if: ${{ success() && contains(matrix.os.coverage, 'coverage') && env.SONAR_TOKEN != '' }} | |
uses: SonarSource/[email protected] | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any | |
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} |