Skip to content

Commit cfdcf03

Browse files
authored
chore: ci (#229)
* chore: enable github actions ci * chore: code clean * chore: lint * chore: cov
1 parent 40ca5d8 commit cfdcf03

File tree

6 files changed

+116
-24
lines changed

6 files changed

+116
-24
lines changed

.eslintrc.js

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
1-
const base = require('@umijs/fabric/dist/eslint');
2-
31
module.exports = {
4-
...base,
2+
extends: [require.resolve('@umijs/fabric/dist/eslint')],
53
rules: {
6-
...base.rules,
74
'no-template-curly-in-string': 0,
85
'prefer-promise-reject-errors': 0,
96
'react/no-array-index-key': 0,

.github/workflows/main.yml

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ master ]
6+
pull_request:
7+
branches: [ master ]
8+
9+
jobs:
10+
setup:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: checkout
14+
uses: actions/checkout@master
15+
16+
- uses: actions/setup-node@v1
17+
with:
18+
node-version: '16'
19+
20+
- name: cache package-lock.json
21+
uses: actions/cache@v2
22+
with:
23+
path: package-temp-dir
24+
key: lock-${{ github.sha }}
25+
26+
- name: create package-lock.json
27+
run: npm i --package-lock-only --ignore-scripts
28+
29+
- name: hack for singe file
30+
run: |
31+
if [ ! -d "package-temp-dir" ]; then
32+
mkdir package-temp-dir
33+
fi
34+
cp package-lock.json package-temp-dir
35+
- name: cache node_modules
36+
id: node_modules_cache_id
37+
uses: actions/cache@v2
38+
with:
39+
path: node_modules
40+
key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
41+
42+
- name: install
43+
if: steps.node_modules_cache_id.outputs.cache-hit != 'true'
44+
run: npm ci
45+
46+
lint:
47+
runs-on: ubuntu-latest
48+
steps:
49+
- name: checkout
50+
uses: actions/checkout@master
51+
52+
- name: restore cache from package-lock.json
53+
uses: actions/cache@v2
54+
with:
55+
path: package-temp-dir
56+
key: lock-${{ github.sha }}
57+
58+
- name: restore cache from node_modules
59+
uses: actions/cache@v2
60+
with:
61+
path: node_modules
62+
key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
63+
64+
- name: lint
65+
run: npm run lint
66+
67+
needs: setup
68+
69+
compile:
70+
runs-on: ubuntu-latest
71+
steps:
72+
- name: checkout
73+
uses: actions/checkout@master
74+
75+
- name: restore cache from package-lock.json
76+
uses: actions/cache@v2
77+
with:
78+
path: package-temp-dir
79+
key: lock-${{ github.sha }}
80+
81+
- name: restore cache from node_modules
82+
uses: actions/cache@v2
83+
with:
84+
path: node_modules
85+
key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
86+
87+
- name: compile
88+
run: npm run compile
89+
90+
needs: setup
91+
92+
coverage:
93+
runs-on: ubuntu-latest
94+
steps:
95+
- name: checkout
96+
uses: actions/checkout@master
97+
98+
- name: restore cache from package-lock.json
99+
uses: actions/cache@v2
100+
with:
101+
path: package-temp-dir
102+
key: lock-${{ github.sha }}
103+
104+
- name: restore cache from node_modules
105+
uses: actions/cache@v2
106+
with:
107+
path: node_modules
108+
key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
109+
110+
- name: coverage
111+
run: npm test -- --coverage && bash <(curl -s https://codecov.io/bash)
112+
113+
needs: setup

.husky/pre-commit

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,3 @@
22
. "$(dirname "$0")/_/husky.sh"
33

44
npx --no-install lint-staged --quiet
5-
npx --no-install jest

.travis.yml

Lines changed: 0 additions & 18 deletions
This file was deleted.

jest.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import type { Config } from '@umijs/test';
55
const config: Config.InitialOptions = {
66
...createConfig(),
77
testEnvironment: 'jsdom',
8+
collectCoverageFrom: ['src/**/*'],
89
};
910

1011
export default config;

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
"compile": "father build && lessc assets/index.less assets/index.css",
3131
"coverage": "jest --coverage",
3232
"gh-pages": "npm run build && father doc deploy -d .docs",
33-
"lint": "eslint . --ext='jsx'",
33+
"lint": "eslint src/ --ext .tsx,.ts",
3434
"prepare": "husky install && dumi setup",
3535
"prepublishOnly": "npm run compile && np --yolo --no-publish",
3636
"start": "dumi dev",

0 commit comments

Comments
 (0)