PyTest integrations with github workflow actions (work-in-progress). #8
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
--- | |
name: PyTest | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
permissions: | |
contents: read | |
env: | |
POSTGRES_DB: rmdb | |
jobs: | |
pytest: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Configure basic environment | |
run: | | |
git config --global user.name "repromon-test" | |
git config --global user.email "[email protected]" | |
uname -a | |
- name: Checkout source code | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Python 3.10 | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
- name: Try to install Python 3.11 | |
run: | | |
sudo apt update | |
sudo apt install python3.11 -y | |
sudo apt install python3-dev -y | |
sudo apt install python3-pip -y | |
sudo apt install python3.11-venv -y | |
shell: bash | |
- name: Create venv and poetry build | |
run: | | |
pwd | |
ls -l | |
python3.11 -m venv venv | |
venv/bin/pip install poetry | |
venv/bin/poetry config virtualenvs.create false | |
venv/bin/poetry config virtualenvs.in-project true | |
venv/bin/poetry env use `which python3` | |
venv/bin/python --version | |
venv/bin/poetry --version | |
venv/bin/poetry install | |
venv/bin/poetry build | |
shell: bash | |
- name: Setup test DB | |
run: | | |
> db/db_dev.sqlite3 | |
venv/bin/poetry run setup_db | |
shell: bash | |
- name: Run pytest | |
run: | | |
venv/bin/poetry run pytest | |
shell: bash |