mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2026-02-08 10:10:59 +00:00
updated instrumentation
This commit is contained in:
36
_deploy/Mohawk/pre-run.sh
Executable file
36
_deploy/Mohawk/pre-run.sh
Executable file
@@ -0,0 +1,36 @@
|
||||
#! /bin/bash
|
||||
# Do these before final testing, *not* just before pushing:
|
||||
# Changed to use uv not pip, requires manage.py to have uv structured uv comment in it.
|
||||
PYTHON="uv run"
|
||||
|
||||
echo "** Run inspectdb:"
|
||||
$PYTHON manage.py inspectdb > troggle-inspectdb.py
|
||||
# egrep -in "unable|error" troggle-inspectdb.py
|
||||
echo ""
|
||||
# count non-blank lines of python and template HTML code
|
||||
# includes all variants of settings.py files
|
||||
|
||||
# fix this as core/utils.py has 28,000 lines of numbers.
|
||||
find . -name \*.html -print0 | xargs -0 egrep -vc "#|^\s*$" | grep -v ":0$" | grep -v ".venv" | awk -F ":" '{ sum +=$2; print $2, $1; } END {print sum}'| sort -n > lines-of-templates.txt
|
||||
|
||||
find . -name \*.py -print0 | xargs -0 egrep -vc "#|^\s*$" | grep -v ":0$" | grep -v ".venv" | grep -v "/migrations/" |grep -v "troggle-inspectdb.py"| awk -F ":" '{ sum +=$2; print $2, $1; } END {print sum}'| sort -n > lines-of-python.txt
|
||||
|
||||
echo "** Run reset-django.py - which deletes the database"
|
||||
# This deletes the database so must run after generating troggle-inspectdb.py
|
||||
$PYTHON reset-django.py
|
||||
echo "** After cleanup deletion, remake all migrations."
|
||||
$PYTHON manage.py makemigrations >/dev/null
|
||||
$PYTHON manage.py migrate
|
||||
|
||||
echo "** Now running self check"
|
||||
$PYTHON manage.py check -v 3 --deploy 2>security-warnings.txt >/dev/null
|
||||
$PYTHON manage.py check -v 3 --deploy
|
||||
|
||||
echo "** Now running test suite"
|
||||
# $PYTHON manage.py test -v 1
|
||||
|
||||
echo ""
|
||||
echo `tail -1 lines-of-python.txt` non-comment lines of python.
|
||||
echo `tail -1 lines-of-templates.txt` non-comment lines of HTML templates.
|
||||
|
||||
echo '** If you have an error running manage.py, maybe you are not in an activated venv ? or your manage.py is not managed by uv properly ?'
|
||||
Reference in New Issue
Block a user