67 lines
1.6 KiB
YAML
67 lines
1.6 KiB
YAML
name: app-actions
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- '**.py'
|
|
branches:
|
|
- main
|
|
- app
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
workflow_dispatch:
|
|
|
|
|
|
jobs:
|
|
mypy:
|
|
runs-on: ubuntu-latest
|
|
continue-on-error: true
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: 3.9
|
|
architecture: x64
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
pip install mypy
|
|
pip install -r app/requirements.txt
|
|
|
|
- name: Run mypy
|
|
run: mypy --ignore-missing-imports ./app
|
|
|
|
pytest:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: 3.9
|
|
architecture: x64
|
|
|
|
- name: Setup MongoDB
|
|
env:
|
|
MONGO_HOST: ${{ env.MONGO_HOST }}
|
|
MONGO_PORT: ${{ env.MONGO_PORT }}
|
|
MONGO_USER: ${{ env.MONGO_USER }}
|
|
MONGO_PASS: ${{ env.MONGO_PASS }}
|
|
run: docker run --name mongodb -d -p $MONGO_PORT:27017 -e MONGO_INITDB_ROOT_USERNAME=$MONGO_USER -e MONGO_INITDB_ROOT_PASSWORD=$MONGO_PASS mongodb/mongodb-community-server
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
pip install pytest==8.3.4 pytest-asyncio==0.25.3 httpx==0.28.1
|
|
pip install -r app/requirements.txt
|
|
- name: Setup moderated base cards
|
|
|
|
working-directory: ./app/tools
|
|
run: python3 _add_base_cards.py -a 2 -f data/base_cards.json
|
|
- name: Run pytest
|
|
run: pytest -vs |