Adding function to wait for server to be back online after core element upgrade
This commit is contained in:
12
main.py
12
main.py
@@ -1,5 +1,6 @@
|
|||||||
import os
|
import os
|
||||||
import json
|
import json
|
||||||
|
from time import sleep
|
||||||
|
|
||||||
import requests
|
import requests
|
||||||
|
|
||||||
@@ -75,6 +76,14 @@ class PortainerClient:
|
|||||||
|
|
||||||
return f"Downloaded newer image for {image}" in status
|
return f"Downloaded newer image for {image}" in status
|
||||||
|
|
||||||
|
def ping_server(self):
|
||||||
|
try:
|
||||||
|
r = requests.get(f"{self.api_url}/", headers=self._get_headers())
|
||||||
|
except requests.exceptions.ConnectionError:
|
||||||
|
return False
|
||||||
|
|
||||||
|
return r.status_code == 200
|
||||||
|
|
||||||
|
|
||||||
def update_repositories():
|
def update_repositories():
|
||||||
for repo_path in config.git_repositories:
|
for repo_path in config.git_repositories:
|
||||||
@@ -118,6 +127,9 @@ if __name__ == '__main__':
|
|||||||
print(f"Restarting {stack_name}")
|
print(f"Restarting {stack_name}")
|
||||||
if endpoint == 2 and stack_name in ('portainer', 'traefik'):
|
if endpoint == 2 and stack_name in ('portainer', 'traefik'):
|
||||||
update_local_stack(stack)
|
update_local_stack(stack)
|
||||||
|
while not client.ping_server():
|
||||||
|
print("Waiting for server to be back online...")
|
||||||
|
sleep(1)
|
||||||
else:
|
else:
|
||||||
client.upgrade_stack(stack)
|
client.upgrade_stack(stack)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user