Skip to content

Updated node.js.yml #107

Updated node.js.yml

Updated node.js.yml #107

Workflow file for this run

# 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.
# Also uses Truffle to compile the smart contracts needed for running the frontend code.
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
name: Node.js & Smart Contracts CI
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.12.0]
# 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'
- name: Install Dependencies from Main Lockfile
run: npm ci
- name: Install Dependencies from Frontend Lockfile
run: npm ci
working-directory: appfrontend
- name: Compile Smart Contracts
run: npx hardhat compile
- name: Build Frontend
run: CI=false npm run build --if-present #Override default behaviour as CI=true treats warnings as errors and fails build.
working-directory: appfrontend
- name: Test Frontend
run: npm test
working-directory: appfrontend
- name: Test Smart Contracts
run: npx hardhat test