99 - main
1010
1111jobs :
12- test-linux :
13- runs-on : ubuntu-latest
12+ test :
13+ runs-on : ${{ matrix.os }}
14+
15+ strategy :
16+ matrix :
17+ os : [ubuntu-latest, macos-latest, windows-latest]
1418
1519 permissions :
1620 id-token : write
1721
1822 steps :
1923 - name : Checkout Repo
2024 uses : actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
21- - name : Setup Bun
22- uses : oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
2325 - name : Setup Pnpm
2426 uses : pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4
2527 - name : Setup Node
@@ -34,59 +36,16 @@ jobs:
3436 - name : Test Packages
3537 run : pnpm test
3638 - name : Upload Coverage
39+ if : matrix.os == 'ubuntu-latest'
3740 uses : codecov/codecov-action@75cd11691c0faa626561e295848008c8a7dddffe # v5
3841 with :
3942 use_oidc : true
4043
41- test-macos :
42- runs-on : macos-latest
43-
44- steps :
45- - name : Checkout Repo
46- uses : actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
47- - name : Setup Bun
48- uses : oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
49- - name : Setup Pnpm
50- uses : pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4
51- - name : Setup Node
52- uses : actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
53- with :
54- cache : pnpm
55- node-version-file : package.json
56- - name : Install Dependencies
57- run : pnpm install
58- - name : Build Packages
59- run : pnpm build
60- - name : Test Packages
61- run : pnpm test
62-
63- test-windows :
64- runs-on : windows-latest
65-
66- steps :
67- - name : Checkout Repo
68- uses : actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
69- - name : Setup Bun
70- uses : oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
71- - name : Setup Pnpm
72- uses : pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4
73- - name : Setup Node
74- uses : actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
75- with :
76- cache : pnpm
77- node-version-file : package.json
78- - name : Install Dependencies
79- run : pnpm install
80- - name : Build Packages
81- run : pnpm build
82- - name : Test Packages
83- run : pnpm test:win
84-
8544 release :
86- needs : [test-linux, test-macos, test-windows ]
45+ needs : [test]
8746 environment : release
8847 runs-on : ubuntu-latest
89- if : github.event_name == 'push' && !contains(github.ref, 'refs/tags/')
48+ if : github.event_name == 'push'
9049
9150 outputs :
9251 created : ${{ steps.release.outputs.new_release_published }}
0 commit comments