Spaces:
Running
Running
name: Lint Frontend | |
on: | |
workflow_call: | |
workflow_dispatch: | |
inputs: | |
branch: | |
description: "(Optional) Branch to checkout" | |
required: false | |
type: string | |
env: | |
NODE_VERSION: "21" | |
jobs: | |
run-linters: | |
name: Run Prettier | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ inputs.branch || github.ref }} | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
id: setup-node | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
- name: Cache Node.js dependencies | |
uses: actions/cache@v4 | |
id: npm-cache | |
with: | |
path: ~/.npm | |
key: ${{ runner.os }}-node-${{ hashFiles('src/frontend/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-node- | |
- name: Install Node.js dependencies | |
run: | | |
cd src/frontend | |
npm install | |
if: ${{ steps.setup-node.outputs.cache-hit != 'true' }} | |
- name: Run Prettier | |
run: | | |
cd src/frontend | |
npm run check-format | |