From c0de223ae44bb749ba3cb69ab940103fcec8b3e3 Mon Sep 17 00:00:00 2001 From: Sunil Mohan Adapa Date: Mon, 4 Feb 2019 16:54:06 -0800 Subject: [PATCH] action_utils: Expose URL checking utility for generic use Signed-off-by: Sunil Mohan Adapa --- plinth/action_utils.py | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/plinth/action_utils.py b/plinth/action_utils.py index 347b46b16..6051f7a5c 100644 --- a/plinth/action_utils.py +++ b/plinth/action_utils.py @@ -348,12 +348,9 @@ def _check_port(port, kind='tcp', listen_address=None): return False -def diagnose_url(url, kind=None, env=None, check_certificate=True, - extra_options=None, wrapper=None, expected_output=None): - """Run a diagnostic on whether a URL is accessible. - - Kind can be '4' for IPv4 or '6' for IPv6. - """ +def check_url(url, kind=None, env=None, check_certificate=True, + extra_options=None, wrapper=None, expected_output=None): + """Check whether a URL is accessible.""" command = ['curl', '-f', '-w', '%{response_code}', url] if wrapper: @@ -383,13 +380,25 @@ def diagnose_url(url, kind=None, env=None, check_certificate=True, except FileNotFoundError: result = 'error' + return result + + +def diagnose_url(url, kind=None, env=None, check_certificate=True, + extra_options=None, wrapper=None, expected_output=None): + """Run a diagnostic on whether a URL is accessible. + + Kind can be '4' for IPv4 or '6' for IPv6. + """ + result = check_url(url, kind, env, check_certificate, extra_options, + wrapper, expected_output) + if kind: return [ _('Access URL {url} on tcp{kind}').format(url=url, kind=kind), result ] - else: - return [_('Access URL {url}').format(url=url), result] + + return [_('Access URL {url}').format(url=url), result] def diagnose_url_on_all(url, **kwargs):