nixos/tests/home-assistant: test capability passing
Configures the emulated_hue component and expects CAP_NET_BIND_SERVICE to be passed in order to be able to bind to 80/tcp. Also print the systemd security analysis, so we can spot changes more quickly.
This commit is contained in:
parent
7d09d7f571
commit
8ab7fc1107
|
@ -47,6 +47,10 @@ in {
|
||||||
payload_on = "let_there_be_light";
|
payload_on = "let_there_be_light";
|
||||||
payload_off = "off";
|
payload_off = "off";
|
||||||
}];
|
}];
|
||||||
|
emulated_hue = {
|
||||||
|
host_ip = "127.0.0.1";
|
||||||
|
listen_port = 80;
|
||||||
|
};
|
||||||
logger = {
|
logger = {
|
||||||
default = "info";
|
default = "info";
|
||||||
logs."homeassistant.components.mqtt" = "debug";
|
logs."homeassistant.components.mqtt" = "debug";
|
||||||
|
@ -82,6 +86,9 @@ in {
|
||||||
hass.succeed(
|
hass.succeed(
|
||||||
"mosquitto_pub -V mqttv5 -t home-assistant/test -u ${mqttUsername} -P '${mqttPassword}' -m let_there_be_light"
|
"mosquitto_pub -V mqttv5 -t home-assistant/test -u ${mqttUsername} -P '${mqttPassword}' -m let_there_be_light"
|
||||||
)
|
)
|
||||||
|
with subtest("Check that capabilities are passed for emulated_hue to bind to port 80"):
|
||||||
|
hass.wait_for_open_port(80)
|
||||||
|
hass.succeed("curl --fail http://localhost:80/description.xml")
|
||||||
with subtest("Print log to ease debugging"):
|
with subtest("Print log to ease debugging"):
|
||||||
output_log = hass.succeed("cat ${configDir}/home-assistant.log")
|
output_log = hass.succeed("cat ${configDir}/home-assistant.log")
|
||||||
print("\n### home-assistant.log ###\n")
|
print("\n### home-assistant.log ###\n")
|
||||||
|
@ -93,5 +100,8 @@ in {
|
||||||
# example line: 2020-06-20 10:01:32 DEBUG (MainThread) [homeassistant.components.mqtt] Received message on home-assistant/test: b'let_there_be_light'
|
# example line: 2020-06-20 10:01:32 DEBUG (MainThread) [homeassistant.components.mqtt] Received message on home-assistant/test: b'let_there_be_light'
|
||||||
with subtest("Check we received the mosquitto message"):
|
with subtest("Check we received the mosquitto message"):
|
||||||
assert "let_there_be_light" in output_log
|
assert "let_there_be_light" in output_log
|
||||||
|
|
||||||
|
with subtest("Check systemd unit hardening"):
|
||||||
|
hass.log(hass.succeed("systemd-analyze security home-assistant.service"))
|
||||||
'';
|
'';
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue