Server IP : 23.254.227.96 / Your IP : 216.73.216.46 Web Server : Apache/2.4.62 (Unix) OpenSSL/1.1.1k System : Linux hwsrv-1277026.hostwindsdns.com 4.18.0-477.13.1.el8_8.x86_64 #1 SMP Tue May 30 14:53:41 EDT 2023 x86_64 User : viralblo ( 1001) PHP Version : 8.1.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/lib/python3.6/site-packages/cloudinit/net/ |
Upload File : |
# This file is part of cloud-init. See LICENSE file for license information. from typing import List, Tuple, Type from . import ( RendererNotFoundError, eni, freebsd, netbsd, netplan, networkd, openbsd, renderer, sysconfig, ) NAME_TO_RENDERER = { "eni": eni, "freebsd": freebsd, "netbsd": netbsd, "netplan": netplan, "networkd": networkd, "openbsd": openbsd, "sysconfig": sysconfig, } DEFAULT_PRIORITY = [ "eni", "sysconfig", "netplan", "freebsd", "netbsd", "openbsd", "networkd", ] def search( priority=None, target=None, first=False ) -> List[Tuple[str, Type[renderer.Renderer]]]: if priority is None: priority = DEFAULT_PRIORITY available = NAME_TO_RENDERER unknown = [i for i in priority if i not in available] if unknown: raise ValueError( "Unknown renderers provided in priority list: %s" % unknown ) found = [] for name in priority: render_mod = available[name] if render_mod.available(target): cur = (name, render_mod.Renderer) if first: return [cur] found.append(cur) return found def select(priority=None, target=None) -> Tuple[str, Type[renderer.Renderer]]: found = search(priority, target=target, first=True) if not found: if priority is None: priority = DEFAULT_PRIORITY tmsg = "" if target and target != "/": tmsg = " in target=%s" % target raise RendererNotFoundError( "No available network renderers found%s. Searched through list: %s" % (tmsg, priority) ) return found[0] # vi: ts=4 expandtab