1
1
name : CI Pipeline
2
2
3
3
on :
4
- - push
4
+ push :
5
5
6
6
env :
7
7
NODE_VERSION : ' 18'
8
8
PNPM_VERSION : ' 10'
9
9
10
10
jobs :
11
- setup :
12
- name : Setup
13
- runs-on : ubuntu-latest
14
- steps :
15
- - uses : actions/checkout@v4
16
- - name : Install pnpm
17
- uses : pnpm/action-setup@v4
18
- with :
19
- version : ${{ env.PNPM_VERSION }}
20
- run_install : false
21
- - uses : actions/setup-node@v4
22
- with :
23
- node-version : ${{ env.NODE_VERSION }}
24
- cache : ' pnpm'
25
-
26
11
lint :
27
12
name : Lint
28
- needs : setup
29
13
runs-on : ubuntu-latest
30
14
steps :
31
15
- uses : actions/checkout@v4
32
- - uses : actions/setup-node@v4
16
+
17
+ # Setup Node.js with pnpm cache
18
+ - name : Setup Node.js
19
+ uses : actions/setup-node@v4
33
20
with :
34
21
node-version : ${{ env.NODE_VERSION }}
35
22
cache : ' pnpm'
36
- - uses : pnpm/action-setup@v4
23
+
24
+ # Install pnpm explicitly
25
+ - name : Install pnpm
26
+ uses : pnpm/action-setup@v4
37
27
with :
38
28
version : ${{ env.PNPM_VERSION }}
29
+
30
+ # Verify pnpm is available
31
+ - name : Check pnpm version
32
+ run : pnpm --version
33
+
39
34
- run : pnpm install --frozen-lockfile
40
35
- run : pnpm lint
41
36
42
37
test :
43
38
name : Test with Coverage
44
- needs : setup
45
39
runs-on : ubuntu-latest
46
40
steps :
47
41
- uses : actions/checkout@v4
48
- - uses : actions/setup-node@v4
42
+
43
+ - name : Setup Node.js
44
+ uses : actions/setup-node@v4
49
45
with :
50
46
node-version : ${{ env.NODE_VERSION }}
51
- - uses : pnpm/action-setup@v4
47
+ cache : ' pnpm'
48
+
49
+ - name : Install pnpm
50
+ uses : pnpm/action-setup@v4
52
51
with :
53
52
version : ${{ env.PNPM_VERSION }}
53
+
54
54
- run : pnpm install --frozen-lockfile
55
55
- run : pnpm test:coverage
56
56
@@ -65,13 +65,18 @@ jobs:
65
65
runs-on : ubuntu-latest
66
66
steps :
67
67
- uses : actions/checkout@v4
68
- - uses : actions/setup-node@v4
68
+
69
+ - name : Setup Node.js
70
+ uses : actions/setup-node@v4
69
71
with :
70
72
node-version : ${{ env.NODE_VERSION }}
71
73
cache : ' pnpm'
72
- - uses : pnpm/action-setup@v4
74
+
75
+ - name : Install pnpm
76
+ uses : pnpm/action-setup@v4
73
77
with :
74
78
version : ${{ env.PNPM_VERSION }}
79
+
75
80
- run : pnpm install --frozen-lockfile
76
81
- run : pnpm build
77
82
- uses : actions/upload-artifact@v3
0 commit comments