Improve the debug mode

This commit is contained in:
Thomas Sileo
2018-05-23 00:57:34 +02:00
parent cc900a2b4c
commit d90e489fc6
4 changed files with 23 additions and 2 deletions

View File

@@ -0,0 +1,12 @@
import logging
logger = logging.getLogger(__name__)
def strtobool(s: str) -> bool:
if s in ['y', 'yes', 'true', 'on', '1']:
return True
if s in ['n', 'no', 'false', 'off', '0']:
return False
raise ValueError(f'cannot convert {s} to bool')

View File

@@ -1,16 +1,24 @@
import logging
import os
import socket
import ipaddress
from urllib.parse import urlparse
from . import strtobool
logger = logging.getLogger(__name__)
def is_url_valid(url):
def is_url_valid(url: str) -> bool:
parsed = urlparse(url)
if parsed.scheme not in ['http', 'https']:
return False
# XXX in debug mode, we want to allow requests to localhost to test the federation with local instances
debug_mode = strtobool(os.getenv('MICROBLOGPUB_DEBUG', 'false'))
if debug_mode:
return True
if parsed.hostname in ['localhost']:
return False