404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@18.222.182.226: ~ $
# This file is part of cloud-init. See LICENSE file for license information.

from typing import List, Tuple, Type

from cloudinit.net import (
    RendererNotFoundError,
    eni,
    freebsd,
    netbsd,
    netplan,
    network_manager,
    networkd,
    openbsd,
    renderer,
    sysconfig,
)

NAME_TO_RENDERER = {
    "eni": eni,
    "freebsd": freebsd,
    "netbsd": netbsd,
    "netplan": netplan,
    "network-manager": network_manager,
    "networkd": networkd,
    "openbsd": openbsd,
    "sysconfig": sysconfig,
}

DEFAULT_PRIORITY = [
    "eni",
    "sysconfig",
    "netplan",
    "network-manager",
    "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]

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
netops Folder 0755
__init__.py File 42.24 KB 0644
activators.py File 8.77 KB 0644
bsd.py File 8.43 KB 0644
cmdline.py File 9.04 KB 0644
dhcp.py File 21.06 KB 0644
eni.py File 21.26 KB 0644
ephemeral.py File 14.33 KB 0644
freebsd.py File 3.25 KB 0644
netbsd.py File 1.41 KB 0644
netplan.py File 18.87 KB 0644
network_manager.py File 19.06 KB 0644
network_state.py File 35.77 KB 0644
networkd.py File 12.19 KB 0644
openbsd.py File 2.47 KB 0644
renderer.py File 1.64 KB 0644
renderers.py File 1.78 KB 0644
sysconfig.py File 42.8 KB 0644
udev.py File 1.39 KB 0644