nixosTests.ocsinventory-agent: init
This commit is contained in:
33
nixos/tests/ocsinventory-agent.nix
Normal file
33
nixos/tests/ocsinventory-agent.nix
Normal file
@@ -0,0 +1,33 @@
|
||||
import ./make-test-python.nix ({ pkgs, ...} : {
|
||||
name = "ocsinventory-agent";
|
||||
|
||||
nodes.machine = { pkgs, ... }: {
|
||||
services.ocsinventory-agent = {
|
||||
enable = true;
|
||||
settings = {
|
||||
debug = true;
|
||||
local = "/var/lib/ocsinventory-agent/reports";
|
||||
tag = "MY_INVENTORY_TAG";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
path = "/var/lib/ocsinventory-agent/reports"
|
||||
|
||||
# Run the agent to generate the inventory file in offline mode
|
||||
start_all()
|
||||
machine.succeed("mkdir -p {}".format(path))
|
||||
machine.wait_for_unit("ocsinventory-agent.service")
|
||||
machine.wait_until_succeeds("journalctl -u ocsinventory-agent.service | grep 'Inventory saved in'")
|
||||
|
||||
# Fetch the path to the generated inventory file
|
||||
report_file = machine.succeed("find {}/*.ocs -type f | head -n1".format(path))
|
||||
|
||||
with subtest("Check the tag value"):
|
||||
tag = machine.succeed(
|
||||
"${pkgs.libxml2}/bin/xmllint --xpath 'string(/REQUEST/CONTENT/ACCOUNTINFO/KEYVALUE)' {}".format(report_file)
|
||||
).rstrip()
|
||||
assert tag == "MY_INVENTORY_TAG", f"tag is not valid, was '{tag}'"
|
||||
'';
|
||||
})
|
||||
Reference in New Issue
Block a user