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 json
|
||||
from time import sleep
|
||||
|
||||
import requests
|
||||
|
||||
@@ -75,6 +76,14 @@ class PortainerClient:
|
||||
|
||||
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():
|
||||
for repo_path in config.git_repositories:
|
||||
@@ -118,6 +127,9 @@ if __name__ == '__main__':
|
||||
print(f"Restarting {stack_name}")
|
||||
if endpoint == 2 and stack_name in ('portainer', 'traefik'):
|
||||
update_local_stack(stack)
|
||||
while not client.ping_server():
|
||||
print("Waiting for server to be back online...")
|
||||
sleep(1)
|
||||
else:
|
||||
client.upgrade_stack(stack)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user