Skip to content

fix: logos and new env vars #2412

fix: logos and new env vars

fix: logos and new env vars #2412

name: Test & Build
on:
pull_request:
branches:
- main
workflow_dispatch:
env:
NODE_VERSION: 18.x
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
install:
name: Install Dependencies
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ env.NODE_VERSION}}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION}}
cache: "npm"
- name: Cache multiple paths
uses: actions/cache@v4
id: cache
with:
path: |
**/node_modules
${{ steps.cache.outputs.dir }}
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-
- name: Install
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci --legacy-peer-deps
build_backend:
name: Build Backend
runs-on: ubuntu-latest
needs: install
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ env.NODE_VERSION}}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION}}
cache: "npm"
- name: Cache multiple paths
uses: actions/cache@v4
id: cache
with:
path: |
**/node_modules
${{ steps.cache.outputs.dir }}
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-
- name: Install
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Build
run: npm run build
working-directory: backend
test_backend:
name: Test Backend
runs-on: ubuntu-latest
needs: install
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ env.NODE_VERSION}}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION}}
cache: "npm"
- name: Cache multiple paths
uses: actions/cache@v4
id: cache
with:
path: |
**/node_modules
${{ steps.cache.outputs.dir }}
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-
- name: Install
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Test
run: npm run test:cov
working-directory: backend
build_frontend:
name: Build Frontend
runs-on: ubuntu-latest
needs: install
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ env.NODE_VERSION}}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION}}
cache: "npm"
- name: Cache multiple paths
uses: actions/cache@v4
id: cache
with:
path: |
**/node_modules
${{ steps.cache.outputs.dir }}
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-
- name: Install
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci --legacy-peer-deps
- name: Build
run: npm run build
working-directory: frontend
test_frontend:
name: Test Frontend
runs-on: ubuntu-latest
needs: install
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ env.NODE_VERSION}}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION}}
cache: "npm"
- name: Cache multiple paths
uses: actions/cache@v4
id: cache
with:
path: |
**/node_modules
${{ steps.cache.outputs.dir }}
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-
- name: Install
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci --legacy-peer-deps
- name: Test
run: npm run jest -- --coverage
working-directory: frontend