Commit Graph

418 Commits

Author SHA1 Message Date
DavHau 8c7ee25dc9 webui: fixes for machines endpoint
- fix machines settings file location
- raise 404 if machine doesn't exist
- improve machine api test
2023-08-26 14:17:25 +02:00
Jörg Thalheim b1f11851fb clan-cli: add README 2023-08-26 12:38:11 +02:00
Jörg Thalheim 9ae14a4f7d integrate static assets into webui command 2023-08-26 12:24:57 +02:00
Jörg Thalheim 672e760e2a replace mock_env with monkeypatch 2023-08-26 11:45:09 +02:00
Jörg Thalheim fb7c77690a replace environment variable with nixpkgs directory
In this directory we generate all the files that we need to load nixpkgs.
This seems more robust than all those environment variables that may or not may be set.
2023-08-26 11:45:09 +02:00
Jörg Thalheim ce3ea68da3 drop unused / from PYTHONPATH 2023-08-26 09:29:28 +02:00
Jörg Thalheim a3b408d8c8 use .direnv for generated project files 2023-08-26 09:26:31 +02:00
DavHau 518bf4197f webui: tests for machine config endpoints 2023-08-26 08:46:53 +02:00
DavHau 868c49acea webui: implement /api/machines/{name}/config 2023-08-25 23:18:34 +02:00
DavHau fb76ad45e8 webui: implement /api/machines/{name}/schema 2023-08-25 21:26:30 +02:00
Johannes Kirschbauer f0bc59a1a2 add cors to rest api 2023-08-25 12:42:20 +02:00
Jörg Thalheim aa14e7ddc7 generate openapi 2023-08-25 11:39:46 +02:00
Jörg Thalheim 33b43ae146 add tests for machines api 2023-08-24 19:16:44 +02:00
Jörg Thalheim 58adf91af8 test machine subcommand 2023-08-24 18:28:33 +02:00
Jörg Thalheim 6adfadd8b9 re-enable config subcommand if CLAN_OPTIONS_FILE is set 2023-08-24 18:28:33 +02:00
Jörg Thalheim dcbf1613fb delete test_cli test
we already cover this in integration tests
2023-08-24 18:28:33 +02:00
Jörg Thalheim d600a927ea tests: generalize secret cli parser to work for all cli commands 2023-08-24 18:28:33 +02:00
Jörg Thalheim 3b099ccb89 clan-cli: move arg parsing to extra method 2023-08-24 18:28:33 +02:00
Jörg Thalheim c5b16124ef add machine subcommand 2023-08-24 16:58:22 +02:00
Jörg Thalheim 56542ca5ef mv update command to machines update command 2023-08-24 16:25:06 +02:00
Jörg Thalheim 80d3349ce0 add stub api for machines 2023-08-24 16:11:08 +02:00
Jörg Thalheim 13a6386004 add integration test for webui 2023-08-24 14:09:19 +02:00
Jörg Thalheim acc648fc6b integrate webserver into cli
integrate webserver into cli
2023-08-24 11:31:41 +02:00
clan-bot 7f6f147d84 Merge pull request 'drop black/ruff from dependency list' (#160) from Mic92-mic92 into main 2023-08-23 15:25:06 +00:00
Jörg Thalheim d60548dfc4 integrate webserver into cli 2023-08-23 17:17:34 +02:00
Jörg Thalheim 79c61f61c7 drop black/ruff from dependency list
those are used implictly by treefmt already
2023-08-23 16:03:56 +02:00
clan-bot 0b847bafae Merge pull request 'clan-cli: disable config subcommand' (#157) from Mic92-mic92 into main 2023-08-23 12:43:22 +00:00
Jörg Thalheim 35340aff80 clan-cli: disable config subcommand
This currently break flakes that do not have clan options defined
2023-08-23 14:42:17 +02:00
clan-bot 7365df338b Merge pull request 'Add nixos module to import secrets automatically' (#154) from Mic92-mic92 into main 2023-08-23 12:04:20 +00:00
Jörg Thalheim 59e31b3c56 fix mypy errors 2023-08-23 13:59:43 +02:00
Jörg Thalheim 63bb9395fd automatically import secrets into nixos 2023-08-23 13:59:43 +02:00
DavHau b16f314c80 clan-config: add option --quiet 2023-08-23 12:25:02 +02:00
Jörg Thalheim 48a5f64be6 clan-cli: make jsonschema optional 2023-08-23 11:59:37 +02:00
DavHau 999fbe0d89 clan-config: add readme
Also add capability of reading an option value
2023-08-23 01:01:07 +02:00
DavHau 780fd881c3 clan-config: fix tests 2023-08-22 21:17:47 +00:00
DavHau 48686591d8 clan-config: improve and add flake-parts module for clan-config 2023-08-22 21:17:47 +00:00
DavHau 52d6798315 clan-config: stop using jsonschema at all for CLI
- instead use options.json coming from nixosOptionsDoc
2023-08-15 15:48:17 +02:00
DavHau 348e503789 clan-config: get rid of jsonschema dependency 2023-08-15 13:29:48 +02:00
Jörg Thalheim 295591ed79 clan-cli/update: only pass flake-uri/flake-attr if they are set 2023-08-11 17:27:36 +02:00
Jörg Thalheim 51f40a4f09 test_update_cli: also test --help 2023-08-11 17:11:47 +02:00
Jörg Thalheim c3a1c89efc cli/admin: drop unused commands 2023-08-11 16:39:03 +02:00
Jörg Thalheim 8f858ca86a cli: add missing help descriptions 2023-08-11 16:39:03 +02:00
Jörg Thalheim da2c1629fe cli: register update command 2023-08-11 16:39:03 +02:00
Jörg Thalheim a096d8ddcc clan-cli: add update command 2023-08-11 16:10:25 +02:00
Jörg Thalheim c9b77e5927 clan-cli/tests/clan_flake: add flake.nix 2023-08-11 16:10:12 +02:00
Jörg Thalheim 8bf809d0ec clan-cli/sshd: fix pytest warnings 2023-08-11 16:10:12 +02:00
Jörg Thalheim 2a31b1d65b add host_group fixture 2023-08-11 16:10:12 +02:00
Jörg Thalheim b3a665cb19 clan-cli/ssh: rename Group -> HostGroup 2023-08-11 16:10:12 +02:00
DavHau 0a9b914ad5 clan-config: improve jsonschema arg parsing
- output json to stdout after success
- expect args in the style: `foo.bar = baz`
- handle different input types
- cast input types on best effort basis
- throw meaningful errors
2023-08-11 00:05:52 +02:00
DavHau d04278e9b1 clan-config: add tests 2023-08-10 21:17:17 +02:00