22 lines
728 B
Bash
22 lines
728 B
Bash
#!/bin/bash
|
|
|
|
VENV_PATH="/opt/venv"
|
|
REQUIREMENTS_PATH="/app/services/database/requirements.txt"
|
|
SCHEMA_PATH="/app/services/database/schema.prisma"
|
|
PRISMA_BINARY_PATH="/root/.cache/prisma-python/binaries"
|
|
|
|
if [ ! -x "$VENV_PATH/bin/python" ]; then
|
|
python -m venv "$VENV_PATH"
|
|
. "$VENV_PATH/bin/activate"
|
|
"$VENV_PATH/bin/pip" install pip --upgrade
|
|
"$VENV_PATH/bin/pip" install -r "$REQUIREMENTS_PATH"
|
|
"$VENV_PATH/bin/prisma" generate --schema "$SCHEMA_PATH"
|
|
fi
|
|
|
|
if ! find "$PRISMA_BINARY_PATH" -type f -name "prisma-query-engine-debian-openssl-3.0.x" 2>/dev/null | grep -q .; then
|
|
"$VENV_PATH/bin/pip" install prisma
|
|
"$VENV_PATH/bin/prisma" py fetch
|
|
fi
|
|
|
|
exec "$VENV_PATH/bin/python" -u /app/services/database/main.py
|