summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Vacek <patrickvacek@gmail.com>2018-07-17 09:34:06 +0200
committerPatrick Vacek <patrickvacek@gmail.com>2018-07-17 10:23:41 +0200
commit76bba03abd7a2c75d0d419d99b5ebdf7ade1818b (patch)
tree14b9a9fa7145d123c9ba5ea6334826dbff7e6370
parentbb987eea86932bbae9437d3ad2d656a023f1abfa (diff)
downloadmeta-updater-76bba03abd7a2c75d0d419d99b5ebdf7ade1818b.tar.gz
aktualizr: retry garage-sign version check and handle errors better.
-rw-r--r--recipes-sota/aktualizr/garage-sign-version.inc17
1 files changed, 15 insertions, 2 deletions
diff --git a/recipes-sota/aktualizr/garage-sign-version.inc b/recipes-sota/aktualizr/garage-sign-version.inc
index f2d04e8..1b89a3d 100644
--- a/recipes-sota/aktualizr/garage-sign-version.inc
+++ b/recipes-sota/aktualizr/garage-sign-version.inc
@@ -11,8 +11,21 @@ python () {
11 url = url_file.read().decode().strip(' \t\n') + '/health/version' 11 url = url_file.read().decode().strip(' \t\n') + '/health/version'
12 except (KeyError, ValueError, RuntimeError): 12 except (KeyError, ValueError, RuntimeError):
13 return 13 return
14 r = urllib.request.urlopen(url) 14 connected = False
15 if r.code != 200: 15 tries = 3
16 for i in range(tries):
17 try:
18 r = urllib.request.urlopen(url)
19 if r.code == 200:
20 connected = True
21 break
22 else:
23 print('Bad return code from server ' + url + ': ' + str(r.code) +
24 ' (attempt ' + str(i + 1) + ' of ' + str(tries) + ')')
25 except urllib.error.URLError as e:
26 print('Error connecting to server ' + url + ': ' + str(e) +
27 ' (attempt ' + str(i + 1) + ' of ' + str(tries) + ')')
28 if not connected:
16 return 29 return
17 resp = r.read().decode('utf-8') 30 resp = r.read().decode('utf-8')
18 j = json.loads(resp) 31 j = json.loads(resp)