From 064cd980cf108793993af866153e870337854cd9 Mon Sep 17 00:00:00 2001 From: Akram El Assas Date: Wed, 3 Apr 2024 23:56:11 +0000 Subject: [PATCH] Create build.yml --- .github/workflows/build.yml | 57 +++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..ce0471ca --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,57 @@ +# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node +# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions + +name: build + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + build: + + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [lts/*] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + + steps: + - uses: actions/checkout@v3 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node-version }} + cache: 'npm' + cache-dependency-path: './api/package-lock.json' + - name: Build API + run: | + cd ./api + npm install + npm run lint + npm run build + - name: Upload coverage reports to Codecov + uses: codecov/codecov-action@v4 + with: + token: ${{ secrets.CODECOV_TOKEN }} + - name: Build Backend + run: | + cd ./backend + npm install + npm run lint + npm run build + - name: Build Frontend + run: | + cd ./frontend + npm install + npm run lint + npm run build + - name: Build Mobile App + run: | + cd ./mobile + npm install + npm run lint + npm run ts:check