mirror of
https://github.com/armbian/dl-router.git
synced 2026-01-06 10:32:39 -08:00
Minor code enhancements (#19)
Only the required methods from json and os modules are imported and the module prefix on method calls removed accordingly. mirror_path and userdata_path variables are assigned only once if the related environment variable is present. The userdata_path variable is only assigned in "dl_map" mode. Signed-off-by: MichaIng <micha@dietpi.com>
This commit is contained in:
33
app/main.py
33
app/main.py
@@ -1,6 +1,6 @@
|
||||
""" flask app to redirect request to appropriate armbian mirror and image """
|
||||
|
||||
import json
|
||||
from json import dumps
|
||||
|
||||
try:
|
||||
import uwsgi
|
||||
@@ -17,19 +17,20 @@ from geolite2 import geolite2
|
||||
from download_image_map import Parser
|
||||
from mirror_list import Mirror
|
||||
|
||||
import os
|
||||
mirror_path="mirrors.yaml"
|
||||
if "ARMBIAN_MIRROR_CONF" in os.environ:
|
||||
mirror_path=os.environ["ARMBIAN_MIRROR_CONF"]
|
||||
from os import environ
|
||||
if "ARMBIAN_MIRROR_CONF" in environ:
|
||||
mirror_path=environ["ARMBIAN_MIRROR_CONF"]
|
||||
else:
|
||||
mirror_path="mirrors.yaml"
|
||||
print("Mirrors conf file:",mirror_path)
|
||||
|
||||
userdata_path="userdata.csv"
|
||||
if "ARMBIAN_USERDATA_CONF" in os.environ:
|
||||
userdata_path=os.environ["ARMBIAN_USERDATA_CONF"]
|
||||
print("userdata conf file:",userdata_path)
|
||||
|
||||
mirror = Mirror(mirror_path)
|
||||
|
||||
if mirror.mode == "dl_map":
|
||||
if "ARMBIAN_USERDATA_CONF" in environ:
|
||||
userdata_path=environ["ARMBIAN_USERDATA_CONF"]
|
||||
else:
|
||||
userdata_path="userdata.csv"
|
||||
print("userdata conf file:",userdata_path)
|
||||
parser = Parser(userdata_path)
|
||||
DL_MAP = parser.parsed_data
|
||||
else:
|
||||
@@ -78,7 +79,7 @@ def get_region(client_ip, reader=geolite_reader, continents=mirror.continents):
|
||||
# pylint: disable=broad-except
|
||||
except Exception as error_message:
|
||||
print(f"match failure for IP: {client_ip} (Error: {error_message}")
|
||||
print(json.dumps(match))
|
||||
print(dumps(match))
|
||||
else:
|
||||
return None
|
||||
|
||||
@@ -135,27 +136,27 @@ def show_mirrors():
|
||||
for i in range(len(mirror_list[region])):
|
||||
if mirror_list[region][i].find('://', 3, 8) == -1:
|
||||
mirror_list[region][i] = 'http://' + mirror_list[region][i]
|
||||
return json.dumps(mirror_list)
|
||||
return dumps(mirror_list)
|
||||
|
||||
|
||||
@app.route('/regions')
|
||||
def show_regions():
|
||||
""" return all_regions in json format to requestor """
|
||||
return json.dumps(mirror.all_regions())
|
||||
return dumps(mirror.all_regions())
|
||||
|
||||
|
||||
@app.route('/dl_map')
|
||||
def show_dl_map(mirror_mode=mirror.mode, dl_map=DL_MAP):
|
||||
""" returns a direct-download map """
|
||||
if mirror_mode == "dl_map":
|
||||
return json.dumps(dl_map)
|
||||
return dumps(dl_map)
|
||||
return "no map. in direct mode"
|
||||
|
||||
|
||||
@app.route('/geoip')
|
||||
def show_geoip(reader=geolite_reader):
|
||||
""" returns the geoip location of the client IP """
|
||||
return json.dumps(reader.get(get_ip()))
|
||||
return dumps(reader.get(get_ip()))
|
||||
|
||||
|
||||
@app.route('/', defaults={'path': ''})
|
||||
|
||||
Reference in New Issue
Block a user