Skip to content

Commit 734e341

Browse files
authored
ci: add self-hosted CI workflow (#687)
* ci: add self-hosted CI workflow
1 parent a23df26 commit 734e341

File tree

1 file changed

+72
-0
lines changed

1 file changed

+72
-0
lines changed
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: Check
2+
on:
3+
push:
4+
branches: [master, main, develop]
5+
pull_request:
6+
branches: [master, main, develop]
7+
workflow_dispatch:
8+
9+
jobs:
10+
lint:
11+
name: Lint
12+
runs-on: [self-hosted, linux]
13+
timeout-minutes: 10
14+
steps:
15+
- name: Checkout code
16+
uses: actions/checkout@v4
17+
with:
18+
clean: true
19+
20+
- name: Setup Node.js
21+
uses: actions/setup-node@v4
22+
with:
23+
node-version: '22.x'
24+
cache: 'npm'
25+
26+
- name: Install dependencies
27+
run: npm ci
28+
env:
29+
CI: true
30+
31+
- name: Run lint
32+
run: npm run lint
33+
34+
test:
35+
name: Test
36+
runs-on: [self-hosted, linux]
37+
timeout-minutes: 15
38+
needs: lint
39+
steps:
40+
- name: Checkout code
41+
uses: actions/checkout@v4
42+
with:
43+
clean: true
44+
45+
- name: Setup Node.js
46+
uses: actions/setup-node@v4
47+
with:
48+
node-version: '22.x'
49+
cache: 'npm'
50+
51+
- name: Install dependencies
52+
run: npm ci
53+
env:
54+
CI: true
55+
56+
- name: Run tests
57+
run: npm test
58+
env:
59+
CI: true
60+
61+
cleanup:
62+
name: Cleanup
63+
runs-on: [self-hosted, linux]
64+
needs: [lint, test]
65+
if: always()
66+
steps:
67+
- name: Clean workspace
68+
run: |
69+
rm -rf node_modules/
70+
rm -rf .npm/
71+
npm cache clean --force
72+
continue-on-error: true

0 commit comments

Comments
 (0)