2020-11-24 10:22:27 +01:00
|
|
|
name: Build & Tests
|
|
|
|
|
2020-12-21 15:58:07 +01:00
|
|
|
on:
|
2021-01-06 13:56:44 +01:00
|
|
|
push:
|
2021-03-04 14:27:43 +01:00
|
|
|
branches:
|
2021-12-23 14:12:19 +01:00
|
|
|
- main
|
2021-06-04 15:33:47 +02:00
|
|
|
paths-ignore:
|
2021-10-25 18:54:46 +02:00
|
|
|
- website/**
|
2022-05-20 11:59:42 +02:00
|
|
|
- coverage/**
|
2021-03-04 14:27:43 +01:00
|
|
|
|
2020-11-24 10:22:27 +01:00
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
|
|
|
strategy:
|
|
|
|
matrix:
|
2021-08-11 12:58:05 +02:00
|
|
|
node-version: [14.x, 16.x]
|
2020-11-24 10:22:27 +01:00
|
|
|
services:
|
|
|
|
# Label used to access the service container
|
|
|
|
postgres:
|
|
|
|
# Docker Hub image
|
|
|
|
image: postgres
|
|
|
|
# Provide the password for postgres
|
|
|
|
env:
|
|
|
|
POSTGRES_PASSWORD: postgres
|
|
|
|
# Set health checks to wait until postgres has started
|
|
|
|
ports:
|
|
|
|
- 5432:5432
|
|
|
|
options: >-
|
2022-06-09 14:26:35 +02:00
|
|
|
--health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
|
|
|
|
|
2022-07-01 13:51:26 +02:00
|
|
|
|
2020-11-24 10:22:27 +01:00
|
|
|
steps:
|
2022-06-09 14:26:35 +02:00
|
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
|
|
uses: actions/setup-node@v3
|
|
|
|
with:
|
|
|
|
node-version: ${{ matrix.node-version }}
|
|
|
|
cache: 'yarn'
|
|
|
|
- run: yarn
|
2023-03-15 15:21:45 +01:00
|
|
|
- run: yarn build:frontend
|
2022-06-09 14:26:35 +02:00
|
|
|
- run: yarn lint
|
|
|
|
- run: yarn run test
|
|
|
|
env:
|
|
|
|
CI: true
|
|
|
|
TEST_DATABASE_URL: postgres://postgres:postgres@localhost:5432/postgres
|
|
|
|
DATABASE_URL: postgres://postgres:postgres@localhost:5432/postgres
|
2022-11-14 11:01:07 +01:00
|
|
|
- uses: aws-actions/configure-aws-credentials@v1
|
|
|
|
with:
|
|
|
|
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
|
|
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
|
|
aws-region: ${{ secrets.AWS_DEFAULT_REGION }}
|
|
|
|
- name: Publish static assets to S3
|
|
|
|
run: |
|
|
|
|
aws s3 cp frontend/build s3://getunleash-static/unleash/main/$(git rev-parse HEAD) --recursive
|