Skip to content

Commit f598eb4

Browse files
committed
[ci] Add new lint GitHub action
Copies the existing circleci workflow for linting into GitHub actions. I didn't remove the circleci for now just to check for parity. ghstack-source-id: a3754dc Pull Request resolved: #30023
1 parent 3776e98 commit f598eb4

File tree

1 file changed

+79
-0
lines changed

1 file changed

+79
-0
lines changed

.github/workflows/lint.yml

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
name: Lint
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
8+
jobs:
9+
prettier:
10+
name: Run prettier
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/checkout@v4
14+
- uses: actions/setup-node@v4
15+
with:
16+
node-version: 18.x
17+
cache: "yarn"
18+
cache-dependency-path: yarn.lock
19+
- name: Restore cached node_modules
20+
uses: actions/cache@v4
21+
with:
22+
path: "**/node_modules"
23+
key: ${{ runner.arch }}-${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
24+
- run: yarn install --frozen-lockfile
25+
- run: yarn prettier-check
26+
27+
eslint:
28+
name: Run eslint
29+
runs-on: ubuntu-latest
30+
steps:
31+
- uses: actions/checkout@v4
32+
- uses: actions/setup-node@v4
33+
with:
34+
node-version: 18.x
35+
cache: "yarn"
36+
cache-dependency-path: yarn.lock
37+
- name: Restore cached node_modules
38+
uses: actions/cache@v4
39+
with:
40+
path: "**/node_modules"
41+
key: ${{ runner.arch }}-${{ runner.os }}-modules-${{ hashFiles('yarn.lock') }}
42+
- run: yarn install --frozen-lockfile
43+
- run: node ./scripts/tasks/eslint
44+
45+
check_license:
46+
name: Check license
47+
runs-on: ubuntu-latest
48+
steps:
49+
- uses: actions/checkout@v4
50+
- uses: actions/setup-node@v4
51+
with:
52+
node-version: 18.x
53+
cache: "yarn"
54+
cache-dependency-path: yarn.lock
55+
- name: Restore cached node_modules
56+
uses: actions/cache@v4
57+
with:
58+
path: "**/node_modules"
59+
key: ${{ runner.arch }}-${{ runner.os }}-modules-${{ hashFiles('yarn.lock') }}
60+
- run: yarn install --frozen-lockfile
61+
- run: ./scripts/circleci/check_license.sh
62+
63+
test_print_warnings:
64+
name: Test print warnings
65+
runs-on: ubuntu-latest
66+
steps:
67+
- uses: actions/checkout@v4
68+
- uses: actions/setup-node@v4
69+
with:
70+
node-version: 18.x
71+
cache: "yarn"
72+
cache-dependency-path: yarn.lock
73+
- name: Restore cached node_modules
74+
uses: actions/cache@v4
75+
with:
76+
path: "**/node_modules"
77+
key: ${{ runner.arch }}-${{ runner.os }}-modules-${{ hashFiles('yarn.lock') }}
78+
- run: yarn install --frozen-lockfile
79+
- run: ./scripts/circleci/test_print_warnings.sh

0 commit comments

Comments
 (0)