clan-core/pkgs/clan-cli
2023-08-30 12:46:49 +00:00
..
bin generate openapi 2023-08-25 11:39:46 +02:00
clan_cli rename clanCore to clan.core 2023-08-30 12:46:49 +00:00
tests secret cli: add get command that returns the key of users/machines 2023-08-30 11:30:57 +02:00
.envrc clan-cli/direnv: also watch default.nix 2023-08-30 11:27:43 +02:00
default.nix clan-cli: fix build if lassulus does an impure build 2023-08-29 13:54:06 +00:00
flake-module.nix fix uneccessary clan-cli rebuilds by not relying on self 2023-08-27 10:21:02 +02:00
pyproject.toml ruff: also enforce variable naming rules 2023-08-27 10:51:47 +02:00
README.md clan-cli: Document how to run single-threaded 2023-08-30 11:28:07 +02:00
shell.nix fix uneccessary clan-cli rebuilds by not relying on self 2023-08-27 10:21:02 +02:00

clan-cli

The clan-cli contains the command line interface as well as the graphical webui through the clan webui command.

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

Hacking on the webui

By default the webui is build from a tarball available https://git.clan.lol/clan/-/packages/generic/ui/. To start a local developement environment instead, use the --dev flag:

./bin/clan webui --dev

This will spawn two webserver, a python one to for the api and a nodejs one that rebuilds the ui on the fly.

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 --workers "" -s

You can also run a single test like this:

pytest --workers "" -s tests/test_secrets_cli.py::test_users