build: ensure index.json is actually valid JSON before uploading (#16518)

* build: ensure index.json is actually valid JSON before uploading

* chore: fix py linting for validation of index.json
This commit is contained in:
Samuel Attard 2019-02-05 11:36:31 -08:00 коммит произвёл GitHub
Родитель 9b7eb0eecb
Коммит 8582325e85
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
1 изменённых файлов: 14 добавлений и 1 удалений

Просмотреть файл

@ -1,5 +1,6 @@
#!/usr/bin/env python
import json
import os
import sys
import urllib2
@ -15,6 +16,13 @@ BASE_URL = 'https://electron-metadumper.herokuapp.com/?version='
version = sys.argv[1]
authToken = os.getenv('META_DUMPER_AUTH_HEADER')
def is_json(myjson):
try:
json.loads(myjson)
except ValueError:
return False
return True
def get_content(retry_count = 5):
try:
request = urllib2.Request(
@ -22,9 +30,14 @@ def get_content(retry_count = 5):
headers={"Authorization" : authToken}
)
return urllib2.urlopen(
proposed_content = urllib2.urlopen(
request
).read()
if is_json(proposed_content):
return proposed_content
print("bad attempt")
raise Exception("Failed to fetch valid JSON from the metadumper service")
except Exception as e:
if retry_count == 0:
raise e