Skip to content

feat: improve development tooling #38

feat: improve development tooling

feat: improve development tooling #38

Workflow file for this run

name: Tests
env:
CI: "1"
on:
push:
branches:
- main
pull_request:
jobs:
tests:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:14-alpine
env:
POSTGRES_DB: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_PORT: 5432
POSTGRES_USER: postgres
ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- uses: actions/checkout@v2
- name: Python Poetry Action
uses: abatilo/actions-poetry@v2.1.6
with:
poetry-version: 1.8.2
- uses: actions/setup-python@v4
with:
python-version: '3.10.10'
cache: 'poetry'
- name: Install deps
run: |
poetry install
- name: Unit Tests
run: poetry run python ./manage.py test
- name: Test w/ Production Dump
env:
DATABASE_URL: postgres://postgres:postgres@localhost:5432/postgres
PRODUCTION_DATABASE_URL: ${{ secrets.PRODUCTION_DATABASE_URL }}
run: |
poetry run python development.py database clone --remote-db-envvar PRODUCTION_DATABASE_URL
poetry run ./manage.py migrate
poetry run ./manage.py set_user_password parrotmac@gmail.com test
poetry run ./manage.py runserver &
npm install
npm run cy:test