Skip to content

Commit 5c05340

Browse files
committed
chore: make coverage upload dynamic
1 parent a3f518e commit 5c05340

File tree

6 files changed

+19
-45
lines changed

6 files changed

+19
-45
lines changed

.github/workflows/code-coverage.yml

Lines changed: 10 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,12 @@ env:
99

1010
jobs:
1111
coverage:
12-
runs-on: ubuntu-latest
12+
strategy:
13+
fail-fast: false
14+
matrix:
15+
lib: [cli, core, models, plugin-eslint, utils, testing-utils]
1316
name: Update code coverage
17+
runs-on: ubuntu-latest
1418
steps:
1519
- name: Checkout the repository
1620
uses: actions/checkout@v3
@@ -21,41 +25,11 @@ jobs:
2125
cache: npm
2226
- name: Install dependencies
2327
run: npm ci
24-
- name: Execute all tests
25-
run: npx nx run-many -t test
26-
- name: Upload cli coverage reports to Codecov
27-
uses: codecov/codecov-action@v3
28-
env:
29-
files: ./coverage/packages/cli/coverage-final.json
30-
flags: cli
31-
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
32-
- name: Upload core coverage reports to Codecov
33-
uses: codecov/codecov-action@v3
34-
env:
35-
files: ./coverage/packages/core/coverage-final.json
36-
flags: core
37-
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
38-
- name: Upload plugin-eslint coverage reports to Codecov
39-
uses: codecov/codecov-action@v3
40-
env:
41-
files: ./coverage/packages/plugin-eslint/coverage-final.json
42-
flags: plugin-eslint
43-
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
44-
- name: Upload models coverage reports to Codecov
45-
uses: codecov/codecov-action@v3
46-
env:
47-
files: ./coverage/packages/models/coverage-final.json
48-
flags: models
49-
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
50-
- name: Upload utils coverage reports to Codecov
51-
uses: codecov/codecov-action@v3
52-
env:
53-
files: ./coverage/packages/utils/coverage-final.json
54-
flags: utils
55-
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
56-
- name: Upload testing-utils coverage reports to Codecov
28+
- name: Execute all tests and generate coverage reports
29+
run: npx nx run ${{ matrix.lib }}:test --coverage
30+
- name: Upload coverage reports to Codecov
5731
uses: codecov/codecov-action@v3
5832
env:
59-
files: ./coverage/testing-utils/coverage-final.json
60-
flags: testing-utils
33+
files: ./coverage/${{ matrix.lib }}/coverage-final.json
34+
flags: ${{ matrix.lib }}
6135
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

packages/cli/project.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,10 @@
3939
},
4040
"test": {
4141
"executor": "@nx/vite:test",
42-
"outputs": ["{workspaceRoot}/coverage/packages/cli"],
42+
"outputs": ["{options.reportsDirectory}"],
4343
"options": {
4444
"passWithNoTests": true,
45-
"reportsDirectory": "../../coverage/packages/cli"
45+
"reportsDirectory": "../../coverage/cli"
4646
}
4747
},
4848
"run-help": {

packages/core/project.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
"outputs": ["{options.reportsDirectory}"],
3737
"options": {
3838
"passWithNoTests": true,
39-
"reportsDirectory": "../../coverage/packages/core"
39+
"reportsDirectory": "../../coverage/core"
4040
}
4141
}
4242
},

packages/models/project.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,10 @@
3737
},
3838
"test": {
3939
"executor": "@nx/vite:test",
40-
"outputs": ["{workspaceRoot}/coverage/packages/models"],
40+
"outputs": ["{options.reportsDirectory}"],
4141
"options": {
4242
"passWithNoTests": true,
43-
"reportsDirectory": "../../coverage/packages/models"
43+
"reportsDirectory": "../../coverage/models"
4444
}
4545
}
4646
},

packages/plugin-eslint/project.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@
3838
},
3939
"test": {
4040
"executor": "@nx/vite:test",
41-
"outputs": ["{workspaceRoot}/coverage/packages/plugin-eslint"],
41+
"outputs": ["{options.reportsDirectory}"],
4242
"options": {
4343
"passWithNoTests": true,
44-
"reportsDirectory": "../../coverage/packages/plugin-eslint"
44+
"reportsDirectory": "../../coverage/plugin-eslint"
4545
}
4646
}
4747
},

packages/utils/project.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@
4040
},
4141
"test": {
4242
"executor": "@nx/vite:test",
43-
"outputs": ["{workspaceRoot}/coverage/{projectRoot}"],
43+
"outputs": ["{options.reportsDirectory}"],
4444
"options": {
4545
"passWithNoTests": true,
46-
"reportsDirectory": "../../coverage/packages/utils"
46+
"reportsDirectory": "../../coverage/utils"
4747
}
4848
}
4949
},

0 commit comments

Comments
 (0)