Skip to content

Django Test Deploy Master #1000

Django Test Deploy Master

Django Test Deploy Master #1000

name: Django Test Deploy Master
on:
push:
branches:
- master
schedule:
- cron: "0 3 * * 0-6" # Every day at 3am UTC
env:
DEBUG: False
LOGGING: False
DJANGO_SETTINGS_MODULE: app.settings
USE_SQLITE: True
SECRET_KEY: "Not applicable for tests"
ALLOWED_HOSTS: "127.0.0.1 localhost"
SITE_ID: 1
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: update-system-dependencies
run: |
sudo apt-get update -y
- name: setup-python
uses: actions/setup-python@v5
with:
python-version: 3.10.8
cache: "pip"
- name: install-python-virtualenv
run: |
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install wheel
pip install -r requirements.txt
- name: lint-with-ruff
run: |
source .venv/bin/activate
ruff --config ./config/pyproject.toml app
- name: collect-static-files
run: |
source .venv/bin/activate
python3 manage.py collectstatic --noinput
- name: run-db-migrations
run: |
source .venv/bin/activate
python3 manage.py migrate --noinput
# - name: run-unit-tests-with-coverage
# run: |
# source .venv/bin/activate
# coverage run --rcfile=config/.coveragerc -m pytest tests
# coverage lcov --rcfile=config/.coveragerc
# - name: coveralls
# uses: coverallsapp/github-action@master
# with:
# github-token: ${{ secrets.github_token }}
static_analysis:
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: ["javascript", "python"]
steps:
- uses: actions/checkout@v4
- name: initialize-codeQL
uses: github/codeql-action/init@v3
with:
config-file: ./.github/codeql/codeql-config.yml
languages: ${{ matrix.language }}
- name: perform-codeQL Analysis
uses: github/codeql-action/analyze@v3