Skip to content

Commit

Permalink
Add a github action for CI
Browse files Browse the repository at this point in the history
  • Loading branch information
bogdanpetrea committed Feb 12, 2024
1 parent 3020dc7 commit dc23e50
Show file tree
Hide file tree
Showing 3 changed files with 87 additions and 3 deletions.
49 changes: 49 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: django-woah CI

on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]

jobs:
build:

runs-on: ubuntu-latest
strategy:
max-parallel: 2
matrix:
python-version: [3.11, 3.12]

services:
mysql:
image: mysql:8.0
env:
MYSQL_DATABASE: test_db
MYSQL_ROOT_PASSWORD: secret
ports:
- 3306:3306

steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
pip install -r exported_requirements.txt
pip install pymysql==1.1.0
- name: Run Tests
env:
DB_ENGINE: django.db.backends.mysql
DB_NAME: test_db
DB_USER: root
DB_PASSWORD: secret
DB_HOST: 127.0.0.1
DB_PORT: 3306
run: |
cd django_woah/ && pytest -vv
cd ..
PYTHONPATH=. DJANGO_SETTINGS_MODULE=issue_tracker.settings pytest -vv --no-migrations examples/issue_tracker
18 changes: 15 additions & 3 deletions examples/issue_tracker/issue_tracker/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
For the full list of settings and their values, see
https://docs.djangoproject.com/en/4.2/ref/settings/
"""
import os

from pathlib import Path

Expand All @@ -26,7 +27,6 @@

ALLOWED_HOSTS = []


# Application definition

AUTH_USER_MODEL = "base_app.Account"
Expand Down Expand Up @@ -78,10 +78,22 @@
# Database
# https://docs.djangoproject.com/en/4.2/ref/settings/#databases

try:
import pymysql

pymysql.version_info = (1, 4, 6, "final", 0) # change mysqlclient version
pymysql.install_as_MySQLdb()
except ImportError:
pass

DATABASES = {
"default": {
"ENGINE": "django.db.backends.sqlite3",
"NAME": BASE_DIR / "db.sqlite3",
"ENGINE": os.environ.get("DB_ENGINE", "django.db.backends.sqlite3"),
"NAME": os.environ.get("DB_NAME", BASE_DIR / "db.sqlite3"),
"USER": os.environ.get("DB_USER", ""),
"PASSWORD": os.environ.get("DB_PASSWORD", ""),
"HOST": os.environ.get("DB_HOST", ""),
"PORT": os.environ.get("DB_PORT", ""),
}
}

Expand Down
23 changes: 23 additions & 0 deletions exported_requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
asgiref==3.7.2 ; python_version >= "3.11" and python_version < "4.0"
colorama==0.4.6 ; python_version >= "3.11" and python_version < "4.0" and sys_platform == "win32"
django-stubs-ext==4.2.7 ; python_version >= "3.11" and python_version < "4.0"
django-stubs==4.2.7 ; python_version >= "3.11" and python_version < "4.0"
django==4.2.10 ; python_version >= "3.11" and python_version < "4.0"
djangorestframework==3.14.0 ; python_version >= "3.11" and python_version < "4.0"
iniconfig==2.0.0 ; python_version >= "3.11" and python_version < "4.0"
mpmath==1.3.0 ; python_version >= "3.11" and python_version < "4.0"
mypy-extensions==1.0.0 ; python_version >= "3.11" and python_version < "4.0"
mypy==1.8.0 ; python_version >= "3.11" and python_version < "4.0"
packaging==23.2 ; python_version >= "3.11" and python_version < "4.0"
pluggy==1.4.0 ; python_version >= "3.11" and python_version < "4.0"
pytest-django==4.8.0 ; python_version >= "3.11" and python_version < "4.0"
pytest==7.4.4 ; python_version >= "3.11" and python_version < "4.0"
pytz==2024.1 ; python_version >= "3.11" and python_version < "4.0"
ruff==0.1.15 ; python_version >= "3.11" and python_version < "4.0"
sqlparse==0.4.4 ; python_version >= "3.11" and python_version < "4.0"
sympy==1.12 ; python_version >= "3.11" and python_version < "4.0"
types-pytz==2024.1.0.20240203 ; python_version >= "3.11" and python_version < "4.0"
types-pyyaml==6.0.12.12 ; python_version >= "3.11" and python_version < "4.0"
typing-extensions==4.9.0 ; python_version >= "3.11" and python_version < "4.0"
tzdata==2023.4 ; python_version >= "3.11" and python_version < "4.0" and sys_platform == "win32"
uuid6==2023.5.2 ; python_version >= "3.11" and python_version < "4.0"

0 comments on commit dc23e50

Please sign in to comment.