Skip to content

Commit

Permalink
adds pytest on PR workflow file
Browse files Browse the repository at this point in the history
Signed-off-by: anchit-chandran <[email protected]>
  • Loading branch information
anchit-chandran committed Aug 29, 2023
1 parent ea041cb commit a13a8f1
Showing 1 changed file with 77 additions and 80 deletions.
Original file line number Diff line number Diff line change
@@ -1,80 +1,77 @@
name: Temp workflow to test Pytest Suite

on:
push:
branches:
- "add-cicd-auto-pytest"
workflow_dispatch:

jobs:
build-and-deploy:
runs-on: ubuntu-latest

# this 'env' refers to environment variables
env:
DJANGO_CSRF_TRUSTED_ORIGINS: https://localhost,https://0.0.0.0
E12_POSTGRES_DB_HOST: 127.0.0.1
E12_POSTGRES_DB_NAME: test_db
E12_POSTGRES_DB_PASSWORD: postgis
E12_POSTGRES_DB_PORT: 5432
E12_POSTGRES_DB_USER: postgis
POSTCODES_IO_API_URL: https://api.postcodes.io
RCPCH_CENSUS_PLATFORM_TOKEN: ${{ secrets.RCPCH_CENSUS_PLATFORM_TOKEN }}
RCPCH_CENSUS_PLATFORM_URL: https://api.rcpch.ac.uk/deprivation/v1
RCPCH_HERMES_SERVER_URL: http://rcpch-hermes.uksouth.azurecontainer.io:8080/v1/snomed

# this 'environment' refers to GitHub Environments, not environment variables
environment:
name: "development"
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}

services:
postgis:
image: postgis/postgis:15-3.3
env:
POSTGRES_USER: postgis
POSTGRES_PASSWORD: postgis
POSTGRES_DB: test_db
ports:
- 5432:5432
# needed because the postgis container does not provide a healthcheck
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5

steps:
- uses: actions/checkout@v3

- name: List all files
run: ls -al

- name: Set up Python version
uses: actions/setup-python@v4
with:
python-version: "3.10"

- name: Install PostGIS dependencies
run: sudo apt-get install -y binutils libproj-dev gdal-bin libgdal-dev python3-gdal

- name: Create and start virtual environment
run: |
python -m venv venv
source venv/bin/activate
# python dependencies
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
# run migrations
- name: Run migrations
run: python manage.py migrate

- name: collect static files
run: python manage.py collectstatic --noinput

# Run Pytest Suite
- name: print settings for debugging purposes
run: python manage.py diffsettings --all

- name: Pytest Suite
run: pytest -rP


name: Pytest Suite

on:
pull_request:
branches:
- "*"

jobs:
build-and-deploy:
runs-on: ubuntu-latest

# this 'environment' refers to GitHub Environments, not environment variables
environment:
name: "development"
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}

# this 'env' refers to environment variables
env:
DJANGO_CSRF_TRUSTED_ORIGINS: https://localhost,https://0.0.0.0
E12_POSTGRES_DB_HOST: 127.0.0.1
E12_POSTGRES_DB_NAME: test_db
E12_POSTGRES_DB_PASSWORD: postgis
E12_POSTGRES_DB_PORT: 5432
E12_POSTGRES_DB_USER: postgis
POSTCODES_IO_API_URL: https://api.postcodes.io
RCPCH_CENSUS_PLATFORM_TOKEN: ${{ secrets.RCPCH_CENSUS_PLATFORM_TOKEN }}
RCPCH_CENSUS_PLATFORM_URL: https://api.rcpch.ac.uk/deprivation/v1
RCPCH_HERMES_SERVER_URL: http://rcpch-hermes.uksouth.azurecontainer.io:8080/v1/snomed

# Sets up a Postgis container for the test db
services:
postgis:
image: postgis/postgis:15-3.3
env:
POSTGRES_USER: postgis
POSTGRES_PASSWORD: postgis
POSTGRES_DB: test_db
ports:
- 5432:5432
# needed because the postgis container does not provide a healthcheck
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5

steps:
- uses: actions/checkout@v3

- name: Set up Python version
uses: actions/setup-python@v4
with:
python-version: "3.10"

- name: Install PostGIS dependencies
run: |
sudo apt-get update
sudo apt-get install -y binutils libproj-dev gdal-bin libgdal-dev python3-gdal
- name: Create and start virtual environment
run: |
python -m venv venv
source venv/bin/activate
# python dependencies
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
# run migrations
- name: Run migrations
run: python manage.py migrate

# Runs tests
- name: Pytest Suite
run: pytest -rP


0 comments on commit a13a8f1

Please sign in to comment.