Commit Graph

491 Commits

Author SHA1 Message Date
Qubasa
a28f910e35 nix fmt 2023-10-27 19:26:03 +02:00
Qubasa
3f87ec851f All tests passing babyyy !! 2023-10-27 19:26:03 +02:00
Qubasa
c1b4fa6d55 nix fmt 2023-10-27 19:21:50 +02:00
Qubasa
3581e0c9a8 Fixing a multitude of tests 2023-10-27 19:21:50 +02:00
Qubasa
d1c35301e3 Added repro_env_break debugging command. This spawn a terminal inside the temp home folder with the same environment as the python test 2023-10-27 19:20:17 +02:00
Qubasa
59393bb35e Working test_create_flake 2023-10-27 19:20:17 +02:00
Qubasa
26bfb793b1 Added ref to Qubasa-main in template/new-clan/flake.nix 2023-10-27 19:20:17 +02:00
Qubasa
a71584d9d2 Added clanName argument to clan-core.lib.builClan 2023-10-27 19:20:17 +02:00
Qubasa
d02acbe04b nix fmt 2023-10-27 19:19:45 +02:00
Qubasa
9f464dd14e Added ipdb as breakpoint console. Improved logging. 2023-10-27 19:19:45 +02:00
Qubasa
af3f04736b Improved logging messages. Added ClanError if flake create or machine create already exist 2023-10-27 19:18:45 +02:00
Qubasa
8482bc79f6 Secrets tests passing. nix fmt doesn't complain 2023-10-27 19:18:45 +02:00
Qubasa
8cc1c2c4bd Fixed cyclic dependencie AND swapped pytest-parallel for pytest-xdist to fix deadlock in tests 2023-10-27 19:18:45 +02:00
Qubasa
2ca54afe7f Added new type FlakeName 2023-10-27 19:18:45 +02:00
Qubasa
32e60f5adc Added flake_name:str argument everywhere, nix fmt doesn't complain anymore 2023-10-27 19:15:40 +02:00
Qubasa
fdcd7ad1d9 Updated to main 2023-10-27 19:15:11 +02:00
Qubasa
711c70d1f0 Added state directory. 2023-10-27 19:11:27 +02:00
Qubasa
fa5f39f226 API: Added Path validators. api/flake/create inits git repo. Fixed vscode interpreter problem 2023-10-27 19:11:27 +02:00
Jörg Thalheim
79e707b044 fix updating multiple machines 2023-10-27 17:40:20 +02:00
Jörg Thalheim
3e4ad8ae1b cli/vms/create: fix trailing newlines in log output 2023-10-27 14:27:52 +02:00
DavHau
0e5c7d2d13 api/machines: split off config validation into separate endpoint
- This speeds up PUT /machines{name}/config as it doesn't do the expensive check anymore
- instead use PUT /machines/{name}/verify which allows a dry-run evaluation of a config which is passed without writing it to disk
2023-10-25 17:48:37 +01:00
DavHau
25708d1a1a /api/clan_modules: init
- add GET /api/clan_modules entry point returning a list of modules available for import
2023-10-25 17:22:35 +01:00
DavHau
bf176ad277 api/machines: allow importing extra modules
- add top-level option `clanImports` to clanCore
- clanImports can be set and checked as any other option
- buildClan resolves the clanImports from the settings.json before calling evalModules to prevent infinite recursions
- new endpoint PUT machines/{name}/schema to allow getting the schema for a specific list of imports
- to retrieve the currently imported modules, cimply do a GET or PU on machines/{name}/config which will return `clanImports` as part of the config

Still missing: get list of available modules
2023-10-25 16:36:30 +01:00
DavHau
588bde069f PUT api/machines/{name}/config: ensure only valid config is ever written
- add CLAN_MACHINE_SETTINGS_FILE variable to temporarily override the machine settings file
- do a dry-run evaluation first with the new config before persisting it.
2023-10-24 18:40:48 +01:00
DavHau
a539fb6dc6 machines: add endpoint machines/{name}/ verify 2023-10-24 16:31:37 +01:00
DavHau
cd940abc4e clan config: refactor - reorder functions 2023-10-24 15:27:19 +01:00
clan-bot
a650d9c341 Merge pull request 'machines/install: call correct upload function' (#426) from Mic92-main into main 2023-10-14 14:06:59 +00:00
Jörg Thalheim
c82a4df9f9 machines/install: call correct upload function 2023-10-14 15:56:04 +02:00
lassulus
3dad667f97 vms.create: don't generate secrets if clan is remote 2023-10-11 12:01:42 +02:00
Qubasa
b49433958b API: Added /api/flake/create. Fixed vscode search settings. Moved clan create to clan flake create 2023-10-09 14:01:34 +02:00
Qubasa
9c74c4d661 CLI: Fixed bug in firefox opening addon page because of new profile 2023-10-08 14:39:31 +02:00
DavHau
f885c877bc clan-cli: improve debug logging 2023-10-05 17:37:33 +02:00
DavHau
dbf80595fd zerotier: fix: find free port without collissions 2023-10-05 17:03:01 +02:00
lassulus
4af74ee5a5 machines update: add --target-host 2023-10-04 23:28:15 +02:00
lassulus
3fb36b3ac1 secrets upload: skip on exit 23, cleanup 2023-10-04 21:29:19 +02:00
DavHau
bdd4cfc7d8 clan join: init 2023-10-04 18:53:59 +02:00
clan-bot
a2597717b3 Merge pull request 'webui: drop deadcode' (#405) from Mic92-main into main 2023-10-04 16:20:23 +00:00
Jörg Thalheim
d0c1eddf79 task_manager: log stdout/stderr correctly for processes 2023-10-04 18:17:30 +02:00
Jörg Thalheim
d156218775 drop dead daemonize code 2023-10-04 18:17:30 +02:00
lassulus
bc36ec4c1a vms: support secrets and fix cross compilation 2023-10-04 18:04:27 +02:00
lassulus
fe1a3f0541 task_manager: fix race conditions 2023-10-04 17:52:06 +02:00
DavHau
544322ee6e webui: open browser in new window
This gets closer to an app like feeling
2023-10-04 17:26:55 +02:00
clan-bot
018590d30b Merge pull request 'improve task manager to report exceptions better' (#402) from Mic92-main into main 2023-10-04 14:51:41 +00:00
Jörg Thalheim
04ba80f614 improve task manager to report exceptions better 2023-10-04 16:49:58 +02:00
lassulus
966a33e711 vm.create: define tmpdir 2023-10-04 16:46:30 +02:00
lassulus
b25af9f0f4 clan_cli: refactor secrets code into Machine class 2023-10-04 16:41:16 +02:00
lassulus
ffb7c63640 clan-cli: add machines install 2023-10-04 16:34:37 +02:00
Jörg Thalheim
80e37483a3 don't register global logger, this interferes currently with that we have in ssh.py 2023-10-04 08:08:06 +02:00
Jörg Thalheim
4abb7d7bf0 make vm test also work in ci 2023-10-03 18:50:14 +02:00
Jörg Thalheim
b2ef8bf1a3 also test that updating a group works 2023-10-03 16:15:36 +00:00