How to use get_main_container_network method in localstack

Best Python code snippet using localstack_python

container_networking.py

Source:container_networking.py Github

copy

Full Screen

...6from localstack.utils.container_utils.container_client import ContainerException7from localstack.utils.docker_utils import DOCKER_CLIENT8LOG = logging.getLogger(__name__)9@lru_cache()10def get_main_container_network() -> Optional[str]:11 """12 Gets the main network of the LocalStack container (if we run in one, bridge otherwise)13 If there are multiple networks connected to the LocalStack container, we choose the first as "main" network14 :return: Network name15 """16 main_container_network = None17 try:18 if config.is_in_docker:19 networks = DOCKER_CLIENT.get_networks(get_main_container_name())20 main_container_network = networks[0]21 else:22 main_container_network = "bridge" # use the default bridge network in case of host mode23 LOG.info("Determined main container network: %s", main_container_network)24 except Exception as e:25 container_name = get_main_container_name()26 LOG.info('Unable to get network name of main container "%s": %s', container_name, e)27 return main_container_network28@lru_cache()29def get_endpoint_for_network(network: Optional[str] = None) -> str:30 """31 Get the LocalStack endpoint (= IP address) on the given network.32 If a network is given, it will return the IP address/hostname of LocalStack on that network33 If omitted, it will return the IP address/hostname of the main container network34 This is a cached call, clear cache if networks might have changed35 :param network: Network to return the endpoint for36 :return: IP address or hostname of LS on the given network37 """38 container_name = get_main_container_name()39 network = network or get_main_container_network()40 main_container_ip = None41 try:42 if config.is_in_docker:43 main_container_ip = DOCKER_CLIENT.get_container_ipv4_for_network(44 container_name_or_id=container_name,45 container_network=network,46 )47 else:48 # default gateway for the network should be the host49 # (only under Linux - otherwise fall back to DOCKER_HOST_FROM_CONTAINER below)50 if config.is_in_linux:51 main_container_ip = DOCKER_CLIENT.inspect_network(network)["IPAM"]["Config"][0][52 "Gateway"53 ]...

Full Screen

Full Screen

Automation Testing Tutorials

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.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run localstack automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful