mirror of
https://git.cmoser.eu/tinytools/django-tinywiki.git
synced 2026-02-04 14:16:32 +01:00
89 lines
2.4 KiB
Bash
Executable File
89 lines
2.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
: ${UWSGI_BUFFER_SIZE:=32768}
|
|
: ${UWSGI_NAME:=uwsgi}
|
|
: ${UWSGI_SOCKET_NAME:=${UWSGI_NAME}.sock}
|
|
: ${UWSGI_LOG_NAME:=${UWSGI_NAME}.log}
|
|
: ${UWSGI_LOG:=/data/run/${UWSGI_LOG_NAME}}
|
|
: ${UWSGI_SOCKET:=/data/run/${UWSGI_SOCKET_NAME}}
|
|
: ${UWSGI_PIDFILE_NAME:=uwsgi.pid}
|
|
: ${UWSGI_PIDFILE:=/data/run/${UWSGI_SOCKET_NAME}}
|
|
: ${UWSGI_PROCESSES:=4}
|
|
: ${HTTP_PORT:=8000}
|
|
: ${HTTP_ADDRESS:=0.0.0.0}
|
|
: ${HTTP_SOCKET:=${HTTP_ADDRESS}:${HTTP_PORT}}
|
|
: ${UWSGI_MAX_REQUESTS:=4000}
|
|
|
|
migrate_db() {
|
|
echo "Migrating database ..."
|
|
poetry run python manage.py migrate
|
|
if [ $? -ne 0 ]; then
|
|
echo "Unable to migrate database!" >&2
|
|
exit 5
|
|
fi
|
|
}
|
|
|
|
collectstatic() {
|
|
echo "Running collectstatic ..."
|
|
yes yes | poetry run python manage.py collectstatic
|
|
if [ $? -ne 0 ]; then
|
|
echo "Unable to collect static files!" >&2
|
|
exit 5
|
|
fi
|
|
}
|
|
|
|
createsuperuser() {
|
|
poetry run python manage.py createsuperuser "$@"
|
|
}
|
|
|
|
if [ $# -eq 0 -o "$1" = "start" ]; then
|
|
if [ -z "$DEBUG" -o $DEBUG != "1" ]; then
|
|
echo "Starting UWSGI server ..."
|
|
venv="$(poetry env info | head -n 6 | grep Path | awk '{print $2}')"
|
|
poetry run uwsgi \
|
|
--chdir /app \
|
|
--module django_project.wsgi:application \
|
|
--master --pidfile /data/run/uwsgi.pid \
|
|
--http-socket "$HTTP_SOCKET" \
|
|
--socket "$UWSGI_SOCKET" \
|
|
--processes $UWSGI_PROCESSES \
|
|
--harakiri 60 \
|
|
--max-requests $UWSGI_MAX_REQUESTS \
|
|
--buffer-size $UWSGI_BUFFER_SIZE \
|
|
--vacuum \
|
|
--venv "$venv" \
|
|
--home "$venv" \
|
|
--logto "$UWSGI_LOG"
|
|
rc=$?
|
|
if [ $rc -ne 0 ]; then
|
|
echo "UWSGI Server not started" >&2
|
|
exit $rc
|
|
fi
|
|
else
|
|
echo "Starting development server ..."
|
|
poetry run python manage.py runserver $HTTP_SOCKET
|
|
rc=$?
|
|
if [ $rc -ne 0 ]; then
|
|
echo "Developemnt server was not started!" >&2
|
|
exit $rc
|
|
fi
|
|
fi
|
|
elif [ "$1" == "init" -o "$1" == "update" ]; then
|
|
migrate_db
|
|
collectstatic
|
|
elif [ "$1" == "suinit" ]; then
|
|
shift
|
|
migrate_db
|
|
collectstatic
|
|
createsuperuser "$@"
|
|
elif [ "$1" == "migrate" ]; then
|
|
migrate_db
|
|
elif [ "$1" == "collectstatic" ]; then
|
|
collectstatic
|
|
elif [ "$1" == "createsuperuser" ]; then
|
|
shift
|
|
createsuperuser "$@"
|
|
else
|
|
exec "$@"
|
|
fi
|