forked from geolba/tethys.backend
72 lines
2.6 KiB
YAML
72 lines
2.6 KiB
YAML
# This workflow will do a clean install of node dependencies, build the source code and run tests
|
|
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
|
|
|
|
name: CI Pipeline
|
|
run-name: ${{ github.actor }} is running CI pipeline
|
|
# trigger build when pushing, or when creating a pull request
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
japa-tests:
|
|
# run build on latest ubuntu
|
|
runs-on: ubuntu-latest
|
|
services:
|
|
postgres:
|
|
image: postgres
|
|
env:
|
|
POSTGRES_USER: ProjectName
|
|
POSTGRES_PASSWORD: password
|
|
POSTGRES_DB: ProjectName-test
|
|
# Set health checks to wait until postgres has started
|
|
options: >-
|
|
--health-cmd pg_isready
|
|
--health-interval 10s
|
|
--health-timeout 5s
|
|
--health-retries 5
|
|
steps:
|
|
# this will check out the current branch (https://github.com/actions/checkout#Push-a-commit-using-the-built-in-token)
|
|
- name: Check out repository code
|
|
uses: actions/checkout@v3
|
|
|
|
# installing Node
|
|
- name: Use Node.js 16.x
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
# this will use the latest Node 12 version
|
|
node-version: 16.x
|
|
|
|
# install dependencies using clean install to avoid package lock updates
|
|
# build the project if necessary
|
|
# - run: npm run build
|
|
# - run: cd build
|
|
|
|
- name: Install dependencies
|
|
run: npm ci
|
|
# - run: npm ci --omit=dev
|
|
|
|
# finally run the tests
|
|
# - run: npm test
|
|
- name: Run tests
|
|
run: node ace test
|
|
env:
|
|
DB_CONNECTION: pg
|
|
PG_HOST: postgres
|
|
PG_PORT: 5432
|
|
PG_USER: ProjectName
|
|
PG_PASSWORD: password
|
|
PG_DB_NAME: ProjectName-test
|
|
PORT: 3333
|
|
HOST: 0.0.0.0
|
|
APP_KEY: somefakekeythatis>16characters
|
|
NODE_ENV: test
|
|
ASSETS_DRIVER: fake
|
|
SESSION_DRIVER: memory
|
|
CACHE_VIEWS: false
|
|
DRIVE_DISK: local
|
|
|
|
# # Save coverage report in Coveralls
|
|
# - name: Coveralls
|
|
# uses: coverallsapp/github-action@master
|
|
# with:
|
|
# github-token: ${{ secrets.GITHUB_TOKEN }}
|