forked from clan/clan-core
- add python modules for qemu protocols: QMP (hardware interactions) and QGA (guest service interaction) - refactor state directory: remove name from path (already contains url) - add impure vm test for basic qmp interaction - simplify existing vm persistance test (factor out shared code) - integrate graceful shutdown into GUI the GUI integration still needs to be improved later: - add fallback in case system doesn't react to powerdown button - shutdown GUI switch fails if VM hasn't been started yet, and then remains in a wrong position |
||
---|---|---|
.. | ||
.vscode | ||
bin | ||
clan_cli | ||
qemu | ||
tests | ||
.envrc | ||
default.nix | ||
deps-flake.nix | ||
flake-module.nix | ||
pyproject.toml | ||
README.md | ||
shell.nix |
clan-cli
The clan-cli contains the command line interface
Hacking on the cli
We recommend setting up direnv to load the developement with nix.
If you do not have it set up you can also use nix develop
directly like this:
use flake .#clan-cli --builders ''
After you can use the local bin wrapper to test things in the cli:
./bin/clan
Run locally single-threaded for debugging
By default tests run in parallel using pytest-parallel.
pytest-parallel however breaks breakpoint()
. To disable it, use this:
pytest -n0 -s
You can also run a single test like this:
pytest -n0 -s tests/test_secrets_cli.py::test_users
Run tests in nix container
Run all impure checks
nix run .#impure-checks
Run all checks
nix flake check