Opex: additional logging for automated glue jobs #13542
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: Node.js CI - Client Unit Tests | |
on: | |
pull_request: | |
jobs: | |
Client: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
ci_node_total: [4] | |
ci_node_index: [0, 1, 2, 3] | |
env: | |
CI_NODE_TOTAL: ${{ matrix.ci_node_total }} | |
CI_NODE_INDEX: ${{ matrix.ci_node_index }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: '20.14.0' | |
- name: Collect Workflow Telemetry | |
uses: runforesight/workflow-telemetry-action@v2 | |
with: | |
comment_on_pr: false | |
- name: Install Node Dependencies | |
run: npm ci | |
- name: Test Client Unit | |
run: | | |
export TESTFILES=$(npx ts-node split-tests-glob.ts -unit) | |
NODE_INDEX=${{ matrix.ci_node_index }} npm run test:client:unit:ci | |
- name: Rename coverage to shard coverage | |
run: | | |
mkdir -p coverage | |
cp web-client/coverage/${{ matrix.ci_node_index }}/lcov.info coverage/lcov-${{ matrix.ci_node_index }}.info | |
cp web-client/coverage/${{ matrix.ci_node_index }}/coverage-final.json coverage/coverage-${{ matrix.ci_node_index }}.json | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-artifacts-${{ matrix.ci_node_index }} | |
path: coverage | |
check-coverage: | |
runs-on: ubuntu-latest | |
needs: [Client] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/download-artifact@v4 | |
with: | |
pattern: coverage-artifacts-* | |
merge-multiple: true | |
path: coverage | |
- name: Process Coverage | |
run: npx nyc report --check-coverage --branches 94.56 --functions 97 --lines 97 --statements 97 --reporter lcov --reporter text --reporter clover -t coverage | |
- uses: geekyeggo/delete-artifact@v1 | |
with: | |
name: coverage-artifacts | |
failOnError: false |