fix a couple of usability bugs in gaia hub read server config; add pre-flight

This commit is contained in:
Jude Nelson
2018-08-07 14:21:26 -04:00
parent 875a505766
commit 695b3610ee

View File

@@ -164,13 +164,13 @@ DEFAULT_GAIA_HUB_CONFIG_TEMPLATE = """
"servername": "%s",
"port": 4001,
"driver": "disk",
"readURL": "http://%s:4000/hub",
"readURL": "http://%s:4000/hub/",
"proofsConfig": {
"proofsRequired" : 0
},
"diskSettings": {
"storageRootDirectory": "@WORKING_DIR@/gaia-hub",
"readURL": "http://%s:4000/hub"
"readURL": "http://%s:4000/hub/"
},
"argsTransport": {
"level": "debug",
@@ -407,6 +407,7 @@ class GaiaServerRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
self.send_header(h, res.headers[h])
self.send_header('Access-Control-Allow-Origin', '*')
self.send_header('Content-Length', '{}'.format(len(res.text)))
self.end_headers()
self.wfile.write(res.text)
@@ -415,6 +416,7 @@ class GaiaServerRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
if not self.path.startswith('/hub/'):
log.error("Invalid request path '{}'".format(self.path))
self.send_response(401, 'Invalid request path')
self.send_header('Access-Control-Allow-Origin', '*')
self.end_headers()
return
@@ -425,11 +427,13 @@ class GaiaServerRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
if not os.path.exists(file_path):
log.error("No such file or directory: '{}'".format(file_path))
self.send_response(404, 'No such file or directory')
self.send_header('Access-Control-Allow-Origin', '*')
self.end_headers()
return
sb = os.stat(file_path)
self.send_response(200)
self.send_header('Access-Control-Allow-Origin', '*')
self.send_header('Content-Type', 'application/octet-stream')
self.send_header('Content-Length', '{}'.format(sb.st_size))
self.end_headers()
@@ -464,6 +468,13 @@ class GaiaServerRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
return
def do_OPTONS(self):
self.send_response(200)
self.send_header('Access-Control-Allow-Origin', '*')
self.end_headers()
return
class GaiaServer(BaseHTTPServer.HTTPServer):
def __init__(self, storage_root, port, upstream_gaia_url):
BaseHTTPServer.HTTPServer.__init__(self, (TEST_CLIENT_BIND, port), GaiaServerRequestHandler)