WIP: Keeping up to date #4360
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run the tests | |
on: [push, pull_request] | |
jobs: | |
runtest_task: | |
name: Using NodeJS and Postgres 12 | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout the repository | |
uses: actions/checkout@v2 | |
- name: Install NodeJS 18 | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '18' | |
cache: 'npm' | |
- run: yarn --version | |
- name: Install PostgreSQL 12 | |
run: | | |
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - | |
echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" |sudo tee /etc/apt/sources.list.d/pgdg.list | |
sudo apt-get -y update | |
sudo apt-get -y install postgresql-12 | |
sudo apt-get -y install postgresql-client-12 | |
- name: before_install | |
run: | | |
sudo sed -i 's/port = 5433/port = 5432/' /etc/postgresql/12/main/postgresql.conf | |
sudo pg_ctlcluster 12 main restart | |
- name: before_script | |
run: | | |
yarn --frozen-lockfile | |
npx patch-package | |
source config/test.env | |
sudo -u postgres createdb ${PGDATABASE} | |
echo Created ${PGDATABASE} | |
sudo -u postgres psql -c "CREATE ROLE ${PGUSER} WITH LOGIN PASSWORD '${PGPASSWORD}'" | |
sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE ${PGDATABASE} to ${PGUSER};" | |
yarn sequelize:test db:migrate | |
yarn sequelize:test db:seed:all | |
yarn workspace server db-import-tests:test -c ${IMPORT_ARIA_AT_TESTS_COMMIT_1} | |
yarn workspace server db-import-tests:test -c ${IMPORT_ARIA_AT_TESTS_COMMIT_2} | |
yarn workspace server db-import-tests:test -c ${IMPORT_ARIA_AT_TESTS_COMMIT_3} | |
yarn workspace server db-import-tests:test -c ${IMPORT_ARIA_AT_TESTS_COMMIT_4} | |
yarn workspace server db-populate-sample-data:test | |
# yarn test would run all of these in serial, however we split this up to allow it continue | |
# in case of errors - all tests will still run even if lint fails for instance. | |
- run: yarn workspace shared prettier | |
if: always() | |
- run: yarn workspace client prettier | |
if: always() | |
- run: yarn workspace server prettier | |
if: always() | |
- run: yarn workspace shared lint | |
if: always() | |
- run: yarn workspace client lint | |
if: always() | |
- run: yarn workspace server lint | |
if: always() | |
- run: yarn workspace shared jest | |
if: always() | |
- run: yarn workspace client jest | |
if: always() | |
- run: yarn workspace server jest | |
if: always() | |
- name: lighthouseci | |
if: always() | |
run: | | |
npm install -g @lhci/cli@0.11.0 | |
yarn workspace client lighthouse |