Skip to content

Add Layout to root.tsx #201

Add Layout to root.tsx

Add Layout to root.tsx #201

name: πŸš€ Deploy (production)
on:
push:
branches:
- main
paths-ignore:
- "README.md"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
jobs:
lint:
name: ⬣ ESLint
runs-on: ubuntu-latest
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: βŽ” Setup node
uses: actions/setup-node@v4
with:
cache: npm
cache-dependency-path: ./package-lock.json
node-version: 22
- name: πŸ“₯ Install deps
run: npm install
- name: πŸ”¬ Lint
run: npm run lint
typecheck:
name: Κ¦ TypeScript
runs-on: ubuntu-latest
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: βŽ” Setup node
uses: actions/setup-node@v4
with:
cache: npm
cache-dependency-path: ./package-lock.json
node-version: 22
- name: πŸ“₯ Install deps
run: npm install
- name: πŸ”Ž Type check
run: npm run typecheck --if-present
vitest:
name: ⚑ Vitest
runs-on: ubuntu-latest
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: βŽ” Setup node
uses: actions/setup-node@v4
with:
cache: npm
cache-dependency-path: ./package-lock.json
node-version: 22
- name: πŸ“₯ Install deps
run: npm install
- name: ⚑ Run vitest
run: npm run test -- --coverage
deploy:
name: πŸš€ Deploy
runs-on: ubuntu-latest
needs: [lint, typecheck, vitest]
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: 🎈 Setup Fly
uses: superfly/flyctl-actions/setup-flyctl@1.5
- name: πŸš€ Deploy Production
if: ${{ github.ref == 'refs/heads/main' }}
run: flyctl deploy --remote-only --config ./fly.production.toml --build-arg COMMIT_SHA=${{ github.sha }}
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
purge:
name: 🧹 Purge CDN
runs-on: ubuntu-latest
needs: [deploy]
steps:
- name: 🧹 Purge All
run: |
curl -D - -X POST --location "https://api.fastly.com/service/${{ secrets.FASTLY_SERVICE_ID }}/purge_all" -H "Accept: application/json" -H "Fastly-Key: ${{ secrets.FASTLY_API_TOKEN }}" -H "fastly-soft-purge: 1"