blob: a03341c4b426d4e6bde7571f430aac2c40f52536 (
plain) (
blame)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 | import datetime
import socket
import time
from contextlib import closing
from pysite.constants import RMQ_HOST, RMQ_PORT
THIRTY_SECONDS = datetime.timedelta(seconds=30)
def wait_for_rmq():
    start = datetime.datetime.now()
    while True:
        if datetime.datetime.now() - start > THIRTY_SECONDS:
            return False
        with closing(socket.socket(socket.AF_INET, socket.SOCK_STREAM)) as sock:
            try:
                state = sock.connect_ex((RMQ_HOST, RMQ_PORT))
                if state == 0:
                    return True
            except socket.gaierror:
                pass
        time.sleep(0.5)
 |