Merge pull request #553 from rcpch:debug-testing-aggregations #163
Workflow file for this run
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
# Docs for the Azure Web Apps Deploy action: https://github.com/Azure/webapps-deploy | |
# More GitHub Actions for Azure: https://github.com/Azure/actions | |
# More info on Python, GitHub Actions, and Azure App Service: https://aka.ms/python-webapps-actions | |
# DEPLOYS CHANGES IN THE 'DEVELOPMENT' BRANCH TO THE 'DEVELOPMENT' AZURE WEBAPP | |
# epilepsy12/development | |
name: Build and deploy Python app to Azure Web App - epilepsy12 | |
on: | |
push: | |
branches: | |
- development | |
workflow_dispatch: | |
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 | |
- name: collect static files | |
run: python manage.py collectstatic --noinput | |
- name: Pytest Suite | |
run: pytest -rP | |
# Deploy to Azure | |
- name: "Deploy to Azure Web App" | |
uses: azure/webapps-deploy@v2 | |
id: deploy-to-webapp | |
with: | |
app-name: "epilepsy12-development" | |
slot-name: "Production" | |
publish-profile: ${{ secrets.AZUREAPPSERVICE_PUBLISHPROFILE_F43DF2B15BBA4BC09CB85DE9AECC20D5 }} | |
package: . |