@@ -22,7 +22,7 @@ permissions:
2222jobs :
2323 lint :
2424 name : 🔠 Lint project
25- runs-on : ubuntu-latest
25+ runs-on : ubuntu-24.04-arm
2626
2727 steps :
2828 - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
3131 with :
3232 node-version : lts/*
3333
34- - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
34+ - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c # 1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
3535 name : 🟧 Install pnpm
3636 # pnpm cache skipped deliberately as the project is not actually installed here
3737
4040
4141 types :
4242 name : 💪 Type check
43- runs-on : ubuntu-latest
43+ runs-on : ubuntu-24.04-arm
4444
4545 steps :
4646 - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
4949 with :
5050 node-version : lts/*
5151
52- - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
52+ - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c # 1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
5353 name : 🟧 Install pnpm
5454 with :
5555 cache : true
6262
6363 unit :
6464 name : 🧪 Unit tests
65- runs-on : ubuntu-latest
65+ runs-on : ubuntu-24.04-arm
6666
6767 steps :
6868 - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
7171 with :
7272 node-version : lts/*
7373
74- - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
74+ - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c # 1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
7575 name : 🟧 Install pnpm
7676 with :
7777 cache : true
@@ -80,11 +80,17 @@ jobs:
8080 run : pnpm install
8181
8282 - name : 🧪 Unit tests
83- run : pnpm test:unit --project unit run --coverage
83+ run : pnpm test:unit run --coverage --reporter=junit --outputFile=test-report.junit.xml
84+
85+ - name : ⬆︎ Upload test results to Codecov
86+ if : ${{ !cancelled() }}
87+ uses : codecov/test-results-action@0fa95f0e1eeaafde2c782583b36b28ad0d8c77d3 # v1
88+ with :
89+ token : ${{ secrets.CODECOV_TOKEN }}
8490
8591 test :
8692 name : 🧪 Component tests
87- runs-on : ubuntu-latest
93+ runs-on : ubuntu-24.04-arm
8894
8995 steps :
9096 - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
9399 with :
94100 node-version : lts/*
95101
96- - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
102+ - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c # 1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
97103 name : 🟧 Install pnpm
98104 with :
99105 cache : true
@@ -105,16 +111,22 @@ jobs:
105111 run : pnpm playwright install chromium-headless-shell
106112
107113 - name : 🧪 Component tests
108- run : pnpm vite test --project nuxt run --coverage
114+ run : pnpm test: nuxt run --coverage --reporter=junit --outputFile=test-report.junit.xml
109115
110- - name : Upload coverage reports to Codecov
116+ - name : ⬆︎ Upload test results to Codecov
117+ if : ${{ !cancelled() }}
118+ uses : codecov/test-results-action@0fa95f0e1eeaafde2c782583b36b28ad0d8c77d3 # v1
119+ with :
120+ token : ${{ secrets.CODECOV_TOKEN }}
121+
122+ - name : ⬆︎ Upload coverage reports to Codecov
111123 uses : codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5
112124 env :
113- CODECOV_TOKEN : 17b4bed9-d407-4ce2-9c10-2ccd4328a1d9
125+ CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
114126
115127 browser :
116128 name : 🖥️ Browser tests
117- runs-on : ubuntu-latest
129+ runs-on : ubuntu-24.04-arm
118130 container :
119131 image : mcr.microsoft.com/playwright:v1.58.0-noble
120132
@@ -125,7 +137,7 @@ jobs:
125137 with :
126138 node-version : lts/*
127139
128- - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
140+ - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c # 1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
129141 name : 🟧 Install pnpm
130142 with :
131143 cache : true
@@ -141,7 +153,7 @@ jobs:
141153
142154 a11y :
143155 name : ♿ Accessibility audit
144- runs-on : ubuntu-latest
156+ runs-on : ubuntu-latest # See https://github.com/GoogleChrome/lighthouse/discussions/16834
145157 strategy :
146158 matrix :
147159 mode : [dark, light]
@@ -153,7 +165,7 @@ jobs:
153165 with :
154166 node-version : lts/*
155167
156- - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
168+ - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c # 1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
157169 name : 🟧 Install pnpm
158170 with :
159171 cache : true
@@ -172,7 +184,7 @@ jobs:
172184
173185 knip :
174186 name : 🧹 Unused code check
175- runs-on : ubuntu-latest
187+ runs-on : ubuntu-24.04-arm
176188
177189 steps :
178190 - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
@@ -181,7 +193,7 @@ jobs:
181193 with :
182194 node-version : lts/*
183195
184- - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
196+ - uses : pnpm/action-setup@1e1c8eafbd745f64b1ef30a7d7ed7965034c486c # 1e1c8eafbd745f64b1ef30a7d7ed7965034c486c
185197 name : 🟧 Install pnpm
186198 with :
187199 cache : true
@@ -191,3 +203,6 @@ jobs:
191203
192204 - name : 🧹 Check for unused code
193205 run : pnpm knip
206+
207+ - name : 🧹 Check for unused production code
208+ run : pnpm knip --production
0 commit comments