Skip to content

chore: add .nvmrc and node engine to package.json #18

chore: add .nvmrc and node engine to package.json

chore: add .nvmrc and node engine to package.json #18

name: Lint and Typecheck
on:
push:
branches:
- main
pull_request:
jobs:
linting-and-typechecking:
runs-on: ubuntu-latest
name: Linting and Typechecking
# Considerar Mover clone/setup/caches a un composite action 🙏
steps:
- name: ⏳ Cloning repo
uses: actions/checkout@v3
- name: ⬢ Setup Node
uses: actions/setup-node@v3
with:
node-version: 18
- name: 📦 Download Cached Package Dependencies
uses: actions/cache@v3
env:
cache-name: NPM
with:
path: ~/.npm
key: CACHE-${{ env.cache-name }}-${{ hashFiles('package-lock.json') }}
- name: 📦 Download Cached Eslint output
uses: actions/cache@v3
env:
cache-name: ESLINT
with:
path: .eslintcache
key: CACHE-${{ env.cache-name }}-${{ hashFiles('.eslintcache') }}
- name: 📦 Download Cached Typescript output
uses: actions/cache@v3
env:
cache-name: TYPESCRIPT
with:
path: tsconfig.tsbuildinfo
key: CACHE-${{ env.cache-name }}-${{ hashFiles('tsconfig.tsbuildinfo') }}
- name: 📥 Install dependencies
run: npm ci --prefer-offline --no-audit --legacy-peer-deps --cache ~/.npm
- name: Run Prettier
run: npm run prettier:ci
- name: Run Linter
run: npm run lint
- name: Run Typecheck
run: npm run typecheck
- name: Run Next Linter
run: npx next lint