Add max amount of retries for web container boot
This commit is contained in:
parent
fd5de4e47c
commit
20cc4b93a9
28
boot.sh
28
boot.sh
@ -1,13 +1,33 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
source venv/bin/activate
|
source venv/bin/activate
|
||||||
|
|
||||||
echo "Updating database"
|
echo "Migrating database"
|
||||||
while python manage.py migrate ; status=$? ; [ $status -eq 1 ]; do
|
|
||||||
echo "Migration failed (error #${status})! Database may not be ready yet, retrying in 5 seconds..."
|
attempt=0
|
||||||
sleep 5
|
max_attempts=20
|
||||||
|
while python manage.py migrate; \
|
||||||
|
status=$?; \
|
||||||
|
attempt=$((attempt+1)); \
|
||||||
|
[ $status -eq 1 ] \
|
||||||
|
&& [ $attempt -le $max_attempts ]; do
|
||||||
|
echo -e "\n!!! Migration failed (error ${status}, attempt ${attempt}/${max_attempts})."
|
||||||
|
echo "!!! Database may not be ready yet or system is misconfigured."
|
||||||
|
echo -e "!!! Retrying in 5 seconds...\n"
|
||||||
|
sleep 5
|
||||||
done
|
done
|
||||||
|
|
||||||
|
if [ $attempt -gt $max_attempts ]; then
|
||||||
|
echo -e "\n!!! Migration failed. Maximum attempts exceeded."
|
||||||
|
echo "!!! Please check logs above - misconfiguration is very likely."
|
||||||
|
echo "!!! Shutting down container."
|
||||||
|
exit 1 # exit with error to make the container stop
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Generating static files"
|
||||||
|
|
||||||
python manage.py collectstatic_js_reverse
|
python manage.py collectstatic_js_reverse
|
||||||
python manage.py collectstatic --noinput
|
python manage.py collectstatic --noinput
|
||||||
|
|
||||||
echo "Done"
|
echo "Done"
|
||||||
|
|
||||||
chmod -R 755 /opt/recipes/mediafiles
|
chmod -R 755 /opt/recipes/mediafiles
|
||||||
|
Loading…
Reference in New Issue
Block a user