Skip to content

Adding react query (#145) #304

Adding react query (#145)

Adding react query (#145) #304

Workflow file for this run

name: Github Actions CI
on:
push:
branches: [main]
pull_request:
types: [opened, synchronize, reopened]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: "**/node_modules"
key: ${{ runner.os }}-modules-${{ hashFiles('**/package-lock.json') }}
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: "npm"
cache-dependency-path: "**/package-lock.json"
- run: npm ci
lint:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
needs: [build]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
- name: Install npm
if: steps.npm-cache.outputs.cache-hit != 'true'
run: npm install
- name: Run lint
run: npm run lint
- name: Run format
run: npm run format
test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
needs: [build]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
- name: Install npm
if: steps.npm-cache.outputs.cache-hit != 'true'
run: npm install
- name: Run Coverage
run: npm run coverage
e2e_visual_a11y:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
needs: [build]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
- name: Install npm
if: steps.npm-cache.outputs.cache-hit != 'true'
run: npm install
- name: Cypress install
run: npx cypress install
- name: Run Build
run: npm run build
- name: Run e2e
run: npm run e2e:test
env:
PERCY_TOKEN: ${{ secrets.PERCY_TOKEN }}
lighthouseci:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
needs: [build]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18.x
- run: npm install -g @lhci/cli@0.12.x
- run: npm install
- run: npm run build
- run: lhci autorun
env:
LHCI_GITHUB_APP_TOKEN: ${{ secrets.LHCI_GITHUB_APP_TOKEN }}
sonarcloud:
name: SonarCloud
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
needs: [build]
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Get master
run: git fetch origin main
- name: Install dependencies
run: npm install
- name: Install Jest globally
run: sudo npm install -g jest
- name: Run Tests
run: npm run browserupdate-coverage
- name: SonarCloud Scan
uses: sonarsource/sonarcloud-github-action@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
deploy:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
needs: [lint,test,e2e_visual_a11y,lighthouseci,sonarcloud]
if: "!contains(github.event.head_commit.message, '[skip ci]')"
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Deploy to Vercel Action
uses: BetaHuhn/deploy-to-vercel-action@latest
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}