forked from osism/ansible-collection-commons
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathkernel_modules.py
33 lines (24 loc) · 1.17 KB
/
kernel_modules.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from .util.util import get_ansible, get_variable, jinja_list_concat
testinfra_runner, testinfra_hosts = get_ansible()
def test_kernel_modules_in_etc_modules(host):
kernel_modules_default = get_variable(host, "kernel_modules_default")
kernel_modules_extra = get_variable(host, "kernel_modules_extra")
kernel_modules = get_variable(host, "kernel_modules")
kernel_modules = jinja_list_concat(
kernel_modules, [kernel_modules_default, kernel_modules_extra]
)
with host.sudo():
etc_modules = host.file("/etc/modules").content_string.splitlines()
for module in kernel_modules:
assert module in etc_modules
def test_loaded_kernel_modules(host):
kernel_modules_default = get_variable(host, "kernel_modules_default")
kernel_modules_extra = get_variable(host, "kernel_modules_extra")
kernel_modules = get_variable(host, "kernel_modules")
kernel_modules = jinja_list_concat(
kernel_modules, [kernel_modules_default, kernel_modules_extra]
)
with host.sudo():
loaded_modules = host.check_output("lsmod").splitlines()
for module in kernel_modules:
assert any(module in line for line in loaded_modules)