27 lines
598 B
Bash
27 lines
598 B
Bash
#!/bin/sh
|
|
set -e
|
|
|
|
# Load secrets into environment
|
|
source /abra-entrypoint.sh -e
|
|
|
|
# Wait for database to be ready (up to 30 seconds)
|
|
i=0
|
|
while ! python manage.py check --database default 2>/dev/null; do
|
|
i=$((i+1))
|
|
if [ "$i" -ge 30 ]; then
|
|
echo "migrate: timed out waiting for database" >&2
|
|
exit 1
|
|
fi
|
|
sleep 1
|
|
done
|
|
|
|
# Idempotent: skip if no pending migrations
|
|
if python manage.py migrate --check > /dev/null 2>&1; then
|
|
echo "migrate: no pending migrations, skipping"
|
|
exit 0
|
|
fi
|
|
|
|
echo "migrate: applying pending migrations..."
|
|
python manage.py migrate --noinput
|
|
echo "migrate: done"
|