Best Python code snippet using localstack_python
edge.py
Source:edge.py  
...339                value = os.environ.get(env_var, None)340                if value is not None:341                    env_vars[env_var] = value342        # note: running in a separate process breaks integration with Route53 (to be fixed for local dev mode!)343        return run_process_as_sudo("dns", PORT_DNS, asynchronous=asynchronous, env_vars=env_vars)344    except Exception:345        pass346def start_edge(port=None, use_ssl=True, asynchronous=False):347    if not port:348        port = config.EDGE_PORT349    if config.EDGE_PORT_HTTP and config.EDGE_PORT_HTTP != port:350        do_start_edge(351            config.EDGE_BIND_HOST,352            config.EDGE_PORT_HTTP,353            use_ssl=False,354            asynchronous=True,355        )356    if port > 1024 or is_root():357        return do_start_edge(config.EDGE_BIND_HOST, port, use_ssl, asynchronous=asynchronous)358    # process requires privileged port but we're not root -> try running as sudo359    class Terminator:360        def stop(self, quiet=True):361            try:362                url = "http%s://%s:%s" % ("s" if use_ssl else "", LOCALHOST, port)363                requests.verify_ssl = False364                requests.post(url, headers={HEADER_KILL_SIGNAL: "kill"})365            except Exception:366                pass367    # register a signal handler to terminate the sudo process later on368    TMP_THREADS.append(Terminator())369    return run_process_as_sudo("edge", port, asynchronous=asynchronous)370def run_process_as_sudo(component, port, asynchronous=False, env_vars=None):371    # make sure we can run sudo commands372    try:373        ensure_can_use_sudo()374    except Exception as e:375        LOG.error("cannot start service on privileged port %s: %s", port, str(e))376        return377    # prepare environment378    env_vars = env_vars or {}379    env_vars["PYTHONPATH"] = f".:{LOCALSTACK_ROOT_FOLDER}"380    env_vars["EDGE_FORWARD_URL"] = config.get_edge_url()381    env_vars["EDGE_BIND_HOST"] = config.EDGE_BIND_HOST382    env_vars_str = env_vars_to_string(env_vars)383    # start the process as sudo384    sudo_cmd = "sudo -n"...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
