Skip to content
name: PR Checks Backend
on:
pull_request:
branches:
- staging
paths:
- "data/**"
- "Dockerfile-pg"
- "init_pg.sql"
- "docker-compose.yml"
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Set up Docker Compose
uses: docker/setup-qemu-action@v3
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11.4"
- name: Run Black Formatter in Docker
run: |
cd data
docker-compose run --rm formatter
continue-on-error: true
- name: Run Flake8
run: |
cd data
pip install flake8
flake8 .
continue-on-error: true
- name: Install dependencies and build Docker images
run: |
cd data
docker-compose pull
docker-compose build
- name: Run vacant-lots-proj
run: |
cd data
docker-compose up -d vacant-lots-proj
continue-on-error: true
- name: Build and check Postgres container
run: |
cd data
docker-compose build postgres
continue-on-error: true
- name: Check build status
if: failure()
run: |
echo "The vacant-lots-proj or postgres container failed to build and run."
exit 1
- name: Report success
if: success()
run: echo "The vacant-lots-proj and postgres container built and ran successfully."
- name: Check formatter and linter status
if: failure()
run: |
echo "Formatting or linting issues found. Please fix the issues."
exit 1
- name: Formatter and linter success
if: success()
run: echo "Formatting and linting passed successfully."