mirror of
https://github.com/aljazceru/mutiny-web.git
synced 2025-12-17 14:24:26 +01:00
add code-quality CI workflow
This commit is contained in:
55
.github/workflows/code-quality.yml
vendored
Normal file
55
.github/workflows/code-quality.yml
vendored
Normal file
@@ -0,0 +1,55 @@
|
||||
name: Code Quality Check
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- prod
|
||||
pull_request:
|
||||
branches:
|
||||
- '*'
|
||||
|
||||
jobs:
|
||||
code_quality:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout source
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 18.x
|
||||
|
||||
- uses: pnpm/action-setup@v2
|
||||
name: Install pnpm
|
||||
id: pnpm-install
|
||||
with:
|
||||
run_install: false
|
||||
|
||||
- name: Get pnpm store directory
|
||||
id: pnpm-cache
|
||||
shell: bash
|
||||
run: |
|
||||
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT
|
||||
|
||||
- uses: actions/cache@v3
|
||||
name: Setup pnpm cache
|
||||
with:
|
||||
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
|
||||
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pnpm-store-
|
||||
|
||||
- name: Step Zero - Install Dependencies
|
||||
run: pnpm install
|
||||
|
||||
- name: Step One - Check Code Formatting
|
||||
run: pnpm run check-format
|
||||
|
||||
- name: Step Two - Check Lint Errors
|
||||
run: pnpm run eslint
|
||||
|
||||
- name: Step Three - Check Type Check Errors
|
||||
run: pnpm run check-types
|
||||
|
||||
8
.github/workflows/playwright.yml
vendored
8
.github/workflows/playwright.yml
vendored
@@ -1,9 +1,13 @@
|
||||
name: Playwright Tests
|
||||
on:
|
||||
push:
|
||||
branches: [ main, master ]
|
||||
branches:
|
||||
- master
|
||||
- prod
|
||||
pull_request:
|
||||
branches: [ main, master ]
|
||||
branches:
|
||||
- '*'
|
||||
|
||||
jobs:
|
||||
test:
|
||||
timeout-minutes: 60
|
||||
|
||||
@@ -11,7 +11,8 @@
|
||||
"check-types": "tsc --noemit",
|
||||
"eslint": "eslint src",
|
||||
"lint": "pnpm run eslint && pnpm run check-types",
|
||||
"format": "npx prettier --write \"src/**/*.{ts,tsx,js,jsx,json,css,scss,md}\""
|
||||
"format": "npx prettier --write \"src/**/*.{ts,tsx,js,jsx,json,css,scss,md}\"",
|
||||
"check-format": "npx prettier --check \"src/**/*.{ts,tsx,js,jsx,json,css,scss,md}\""
|
||||
},
|
||||
"type": "module",
|
||||
"devDependencies": {
|
||||
|
||||
Reference in New Issue
Block a user