Merge pull request #4 from benzcash/ben/wait-for-db-now
Adding a wait for the db to come up, issues with this failing on prod
This commit is contained in:
commit
279340d5de
|
@ -2,10 +2,11 @@
|
|||
|
||||
set -e
|
||||
|
||||
python docker/zfaucet/wait_for.py --host db --port 5432 --timeout 60
|
||||
python manage.py makemigrations
|
||||
python manage.py migrate
|
||||
python manage.py collectstatic --no-input
|
||||
python manage.py check_zcashd --wait 120
|
||||
python manage.py check_zcashd --wait 240
|
||||
python manage.py healthcheck
|
||||
gunicorn --bind=0.0.0.0:8000 --workers=2 zfaucet.wsgi
|
||||
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
#!env python3
|
||||
|
||||
import argparse
|
||||
import socket
|
||||
import time
|
||||
import sys
|
||||
|
||||
waiting = True
|
||||
elasped = 0
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--host", help="Host to test")
|
||||
parser.add_argument("--port", help="Port to test", type=int)
|
||||
parser.add_argument("--timeout", help="Seconds to wait (default 10)", type=int, default=10 )
|
||||
args = parser.parse_args()
|
||||
print('waiting for: {}:{}'.format(args.host, args.port))
|
||||
|
||||
while waiting:
|
||||
if elasped > args.timeout:
|
||||
print('Timeout reached, exiting')
|
||||
sys.exit(1)
|
||||
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
try:
|
||||
s.connect((args.host, args.port))
|
||||
waiting = False
|
||||
except socket.error:
|
||||
elasped += 2
|
||||
time.sleep(2)
|
||||
print('Elapsed: {}s'.format(elasped))
|
||||
|
||||
print('Connect to {}:{}!'.format(args.host, args.port))
|
||||
|
Loading…
Reference in New Issue