Skip to content

Merge pull request #1 from abhishekpatel946/imgbot #22

Merge pull request #1 from abhishekpatel946/imgbot

Merge pull request #1 from abhishekpatel946/imgbot #22

Workflow file for this run

name: Node.js CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
build:
name: Build
runs-on: ubuntu-latest
services:
postgres:
image: postgres:latest
env:
POSTGRES_DB: moodb_test
POSTGRES_PASSWORD: moopass
POSTGRES_USER: mooadmin
ports:
- 5432:5432
# Set health checks to wait until postgres has started
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
strategy:
matrix:
node-version: [14.x, 16.x]
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
steps:
- name: Checkout Code
uses: actions/checkout@v2
- name: Cache node modules
uses: actions/cache@v2
env:
cache-name: cache-node-modules
with:
path: ~/.npm
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
- name: Run CI
run: npm ci
- name: Build Application
run: npm run build
- name: Run Unit Tests (with Coverage)
run: npm run test:cov
- name: Upload unit test coverage to Codecov
uses: codecov/codecov-action@v2
with:
token: ${{ secrets.CODECOV_TOKEN }}
directory: ./coverage
fail_ci_if_error: true
flags: unittests
verbose: true
- name: Run E2E Tests (with Coverage)
run: npm run test:e2e:cov
- name: Upload E2E test coverage to Codecov
uses: codecov/codecov-action@v2
with:
token: ${{ secrets.CODECOV_TOKEN }}
directory: ./coverage-e2e
fail_ci_if_error: true
flags: e2etests
verbose: true