-
Notifications
You must be signed in to change notification settings - Fork 0
51 lines (41 loc) · 1.34 KB
/
lint-test.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# A sample CI/CD workflow for Fensak rules. This workflow will:
# - Lint the code using `pnpm lint`.
# - Run the tests using `pnpm test` and output a junit report.
# - Process the junit report and upload to GitHub Actions so that it can be viewed.
name: lint-test
on:
push:
branches:
- main
pull_request:
permissions:
checks: write
contents: read
jobs:
# Run linter and tests against Fensak rules
linttest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
- uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0
- uses: pnpm/action-setup@d882d12c64e032187b2edb46d3a0d003b7a43598
name: Install pnpm
with:
version: 8
run_install: false
- name: install dependencies
run: pnpm install --frozen-lockfile
- name: lint
run: pnpm lint
- name: test
run: pnpm test
env:
GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# See https://jestjs.io/docs/ecmascript-modules
NODE_OPTIONS: "--experimental-vm-modules"
- name: report
uses: mikepenz/action-junit-report@75b84e78b3f0aaea7ed7cf8d1d100d7f97f963ec # v4.0.0
if: always()
with:
report_paths: "junit.xml"
check_name: "jest test report"