Commit Graph

119 Commits

Author SHA1 Message Date
Jörg Thalheim
81d02bb218 tests: rewrite port allocation function 2023-08-27 09:34:36 +02:00
DavHau
b55ceec40c clan-config: use pinned nixpkgs + fix test flake 2023-08-26 23:33:32 +02:00
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
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
DavHau
518bf4197f webui: tests for machine config endpoints 2023-08-26 08:46:53 +02:00
DavHau
fb76ad45e8 webui: implement /api/machines/{name}/schema 2023-08-25 21:26:30 +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
56542ca5ef mv update command to machines update command 2023-08-24 16:25:06 +02:00
Jörg Thalheim
13a6386004 add integration test for webui 2023-08-24 14:09:19 +02:00
DavHau
b16f314c80 clan-config: add option --quiet 2023-08-23 12:25:02 +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
51f40a4f09 test_update_cli: also test --help 2023-08-11 17:11:47 +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
clan-bot
2fa0c38625 Merge pull request 'add test for remote ssh commands' (#115) from Mic92-mic92 into main 2023-08-10 09:05:48 +00:00
Jörg Thalheim
a17baa4861 add test for remote ssh commands 2023-08-10 11:05:05 +02:00
clan-bot
dd9f1820a5 Merge pull request 'add test for local commands' (#114) from Mic92-mic92 into main 2023-08-09 14:24:06 +00:00
Jörg Thalheim
f8f9cd457a add test for local commands 2023-08-09 16:23:15 +02:00
DavHau
7262208a4c clanLib.jsonschema: move tests from pkgs/clan-cli 2023-08-09 16:05:33 +02:00
DavHau
9438a9eb5f clan-config: move jsonschema lib to clanLib 2023-08-09 16:05:33 +02:00
Jörg Thalheim
d977499ffe rename cli tests to have a common suffix
rename test_import_sops -> test_import_sops
2023-08-09 15:54:27 +02:00
Jörg Thalheim
8fea55da32 move ssh cli to cli submodule 2023-08-09 15:46:34 +02:00
Jörg Thalheim
daf1058312 clan-cli: fix secrets test 2023-08-09 10:50:48 +02:00
Jörg Thalheim
68905fc233 don't add user to a secret if they already can access the secret
If the user is part of a group we don't need to add them explicitly
2023-08-09 10:17:30 +02:00
Jörg Thalheim
2988532909 allow to set groups/admins/users when setting secrets 2023-08-08 19:40:35 +02:00
Jörg Thalheim
6f9aaef56a add option to import sops secrets with groups,users,machines,prefixes 2023-08-08 18:46:37 +02:00
Jörg Thalheim
d8c2df2e72 add test for import-sops command 2023-08-08 16:28:38 +02:00
Jörg Thalheim
0533948085 fix rotating keys with sops 2023-08-08 13:44:15 +02:00
DavHau
b88ac7a2bf clan-config: init
- nixos-modules to jsonschema converter
- nix unit testing via adisbladis/nix-unit
- clan config: configuration CLI for nixos-modules
2023-08-02 20:04:16 +02:00
Jörg Thalheim
dab483339a test list/remove secret 2023-08-02 12:00:32 +00:00
Jörg Thalheim
658c76336f add secrets integration
clan-cli: also depend on age for secrets
2023-08-02 09:19:14 +00:00
Jörg Thalheim
6e7c34cd5c tests/clan-flake: yield flake path rather than homedir 2023-07-28 15:01:37 +02:00
Jörg Thalheim
bc7dada58c tests/clan_flake: fix fixture name 2023-07-28 13:47:32 +02:00
Jörg Thalheim
29c711db30 add clan_flake fixture to setup a temporary clan 2023-07-28 12:54:49 +02:00
Jörg Thalheim
88a2c2656a get_clan_flake_toplevel: fix check 2023-07-28 12:36:01 +02:00