|
|
|
@ -76,12 +76,12 @@ class WaitTimeHelper: |
|
|
|
|
self.ready_event.set() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def wait_between_updates(ready_event): |
|
|
|
|
def wait_between_updates(ready_event, t=60*10): |
|
|
|
|
ready_event.clear() |
|
|
|
|
if SHORT: |
|
|
|
|
ready_event.wait(timeout=10) |
|
|
|
|
else: |
|
|
|
|
ready_event.wait(timeout=60 * 10) |
|
|
|
|
ready_event.wait(timeout=t) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def link(src, dest): |
|
|
|
@ -341,13 +341,17 @@ def main(): |
|
|
|
|
time.sleep(30) |
|
|
|
|
wait_helper = WaitTimeHelper() |
|
|
|
|
|
|
|
|
|
while True: |
|
|
|
|
while not wait_helper.shutdown: |
|
|
|
|
update_failed_count += 1 |
|
|
|
|
|
|
|
|
|
# Check for internet every 30s |
|
|
|
|
time_wrong = datetime.datetime.utcnow().year < 2019 |
|
|
|
|
ping_failed = subprocess.call(["ping", "-W", "4", "-c", "1", "8.8.8.8"]) |
|
|
|
|
if ping_failed or time_wrong: |
|
|
|
|
wait_between_updates(wait_helper.ready_event, t=30) |
|
|
|
|
continue |
|
|
|
|
|
|
|
|
|
# Wait until we have a valid datetime to initialize the overlay |
|
|
|
|
if not (ping_failed or time_wrong): |
|
|
|
|
# Attempt an update |
|
|
|
|
try: |
|
|
|
|
# If the git directory has modifcations after we created the overlay |
|
|
|
|
# we need to recreate the overlay |
|
|
|
@ -383,8 +387,6 @@ def main(): |
|
|
|
|
|
|
|
|
|
params.put("UpdateFailedCount", str(update_failed_count)) |
|
|
|
|
wait_between_updates(wait_helper.ready_event) |
|
|
|
|
if wait_helper.shutdown: |
|
|
|
|
break |
|
|
|
|
|
|
|
|
|
# We've been signaled to shut down |
|
|
|
|
dismount_ovfs() |
|
|
|
|