Repository navigation
61 lines (50 loc) · 1.78 KB
/
Copy pathui-test.yaml
File metadata and controls
61 lines (50 loc) · 1.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
name: UI Test
# Typecheck, lint and unit tests for the in-tree console SPA
# (packages/system/dashboard/images/console, vendored from cozystack-ui).
# The container image itself is built by `make build` in the main build job.
on:
push:
branches:
- main
paths:
- 'packages/system/dashboard/images/console/**'
pull_request:
paths:
- 'packages/system/dashboard/images/console/**'
defaults:
run:
working-directory: packages/system/dashboard/images/console
# Read-only token; this workflow only checks out code and runs typecheck/lint/tests.
permissions:
contents: read
jobs:
test:
name: Typecheck and test
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
with:
# No git pushes from this workflow; don't leave the token in .git/config
# where a later `pnpm install` step could read it.
persist-credentials: false
- name: Set up pnpm
uses: pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4
with:
# The monorepo root has no package.json; read the pnpm version from
# the console workspace manifest (packageManager field).
package_json_file: packages/system/dashboard/images/console/package.json
- name: Set up Node.js
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:
node-version: 22
cache: pnpm
cache-dependency-path: packages/system/dashboard/images/console/pnpm-lock.yaml
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Typecheck
run: pnpm typecheck
- name: Lint
run: pnpm lint
- name: Test
run: pnpm test