Blame tests/unittests/test_distros/__init__.py
|
Packit Service |
a04d08 |
# This file is part of cloud-init. See LICENSE file for license information.
|
|
Packit Service |
a04d08 |
import copy
|
|
Packit Service |
a04d08 |
|
|
Packit Service |
a04d08 |
from cloudinit import distros
|
|
Packit Service |
a04d08 |
from cloudinit import helpers
|
|
Packit Service |
a04d08 |
from cloudinit import settings
|
|
Packit Service |
a04d08 |
|
|
Packit Service |
a04d08 |
|
|
Packit Service |
a04d08 |
def _get_distro(dtype, system_info=None):
|
|
Packit Service |
a04d08 |
"""Return a Distro class of distro 'dtype'.
|
|
Packit Service |
a04d08 |
|
|
Packit Service |
a04d08 |
cfg is format of CFG_BUILTIN['system_info'].
|
|
Packit Service |
a04d08 |
|
|
Packit Service |
a04d08 |
example: _get_distro("debian")
|
|
Packit Service |
a04d08 |
"""
|
|
Packit Service |
a04d08 |
if system_info is None:
|
|
Packit Service |
a04d08 |
system_info = copy.deepcopy(settings.CFG_BUILTIN['system_info'])
|
|
Packit Service |
a04d08 |
system_info['distro'] = dtype
|
|
Packit Service |
a04d08 |
paths = helpers.Paths(system_info['paths'])
|
|
Packit Service |
a04d08 |
distro_cls = distros.fetch(dtype)
|
|
Packit Service |
a04d08 |
return distro_cls(dtype, system_info, paths)
|