<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def runserver(port=8080, debug_toolbar="yes", werkzeug="no", dummy_cache="no", short_cache="no", template_warnings="no", log_level="DEBUG", insecure="no"):
 """Clear compiled python files and start the Django dev server."""

    if not port or (not isinstance(port, int) and not port.isdigit()):
        abort("You must specify a port.")

    # clean_pyc()
    yes_or_no = ("debug_toolbar", "werkzeug", "dummy_cache", "short_cache", "template_warnings", "insecure")
    for s in yes_or_no:
        if locals()[s].lower() not in ("yes", "no"):
            abort("Specify 'yes' or 'no' for {} option.".format(s))

    _log_levels = ("DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL")
    if log_level not in _log_levels:
        abort("Invalid log level.")

    with shell_env(SHOW_DEBUG_TOOLBAR=debug_toolbar.upper(), DUMMY_CACHE=dummy_cache.upper(), SHORT_CACHE=short_cache.upper(),
                   WARN_INVALID_TEMPLATE_VARS=template_warnings.upper(), LOG_LEVEL=log_level):
        local("./manage.py runserver{} 0.0.0.0:{}{}".format("_plus" if werkzeug.lower() == "yes" else "", port, " --insecure"
                                                            if insecure.lower() == "yes" else ""))