Commit Graph

353 Commits

Author SHA1 Message Date
DavHau
9f63f725d3 history: fix: store entries only once 2023-11-20 11:39:00 +07:00
DavHau
c46638f589 api/flake/history: implement review requests 2023-11-17 18:26:55 +07:00
clan-bot
bf2b8b4cca Merge pull request 'hide root from api schema' (#529) from hsjobeki-hsjobeki into main 2023-11-17 11:07:11 +00:00
Johannes Kirschbauer
f07fb05220 hide root from api schema 2023-11-17 12:03:40 +01:00
DavHau
64649ff7a9 api/flake/list_history: init
Add an api endpoint to list the history of clan flakes that have been interacted with

Also add `clan flake list`
2023-11-17 17:56:14 +07:00
Johannes Kirschbauer
02c3222f6b hide root from api schema 2023-11-17 11:54:17 +01:00
DavHau
999ad67277 api/flake/add: init
Adds an endpoint to memoize clans.
clan flakes can be added to the history either via the endpoint or by executing `clan flakes add`
2023-11-17 17:05:15 +07:00
Jörg Thalheim
978d9efd7e secrets/generate-private-key: just create parent opportunistically 2023-11-16 13:19:12 +01:00
kenji
12930b4057 clan_cli: create key directory 2023-11-15 23:15:12 +01:00
lassulus
5640b84433 machines.update: remove redundant flake argument 2023-11-15 21:57:08 +01:00
lassulus
1ea13646ea clan_cli: flake_name -> flake_dir 2023-11-15 16:23:28 +01:00
Jörg Thalheim
9358dfb666 drop verbose command logging in task manager 2023-11-15 07:21:26 +01:00
Jörg Thalheim
6cb41cb006 also regenerate secrets if a fact is missing 2023-11-14 17:07:58 +01:00
Jörg Thalheim
b9618e57c5 fix exception when file does not exist
fixes https://git.clan.lol/clan/clan-core/issues/488
2023-11-14 16:57:05 +01:00
Jörg Thalheim
19d7f17310 add cors headers in exception handler in cors 2023-11-14 16:39:20 +01:00
Jörg Thalheim
18627baa9c only enable corsmiddleware when in dev mode and allow all origins 2023-11-14 15:32:03 +01:00
DavHau
6a52c5f15b api/machines: allow config verification on imaginary machines
Machines do not need to exist in order to verify their configuration.

This allows verifying a config before creating an actual machine with it.
2023-11-13 21:24:05 +07:00
DavHau
55a1df7868 api/machines: verify config by evaluating the .vm output
This fixes the problem where fileSystems were missing, or boot.loader was not set.

SInce we want VMs anyways for now, this strategy aligns well
2023-11-13 20:50:11 +07:00
DavHau
1652b5c27b api/machines: init put_machine replacing create_machine and set_machine_config
This allows creating and configuring a machine in one single step.
2023-11-13 20:25:52 +07:00
DavHau
2395119d21 task_manager.py: fix index out of range bug 2023-11-13 20:21:51 +07:00
DavHau
14c4b99891 commit_file: fix diff computation
previously computed diff over all files
2023-11-13 19:59:20 +07:00
DavHau
42dba72239 chore: remove unnecessary comment 2023-11-12 07:57:48 +07:00
DavHau
236ca4f98c api/machines: ensure name is valid hostname 2023-11-12 07:57:48 +07:00
Jörg Thalheim
54ede8a0ff vms/create: drop extra flake argument and make it work with local flakes 2023-11-10 13:43:14 +01:00
Jörg Thalheim
c0be813a4c dirs: opportuniscally create directories 2023-11-10 12:55:46 +01:00
Jörg Thalheim
657cdd6e67 drop unused clan_data_dir 2023-11-10 12:55:46 +01:00
Jörg Thalheim
df1acebd87 move flake configuration to .config/clan/flakes rather than $XDG_DATA_DIRS 2023-11-10 12:50:51 +01:00
Jörg Thalheim
46191b9a9c drop unused ClanDataPath 2023-11-10 12:46:15 +01:00
Jörg Thalheim
85a06d47e5 breakpoint_shell: make work_dir optional 2023-11-10 12:40:51 +01:00
Jörg Thalheim
13b685f7af moving deal dependencies to tests only 2023-11-10 12:39:24 +01:00
clan-bot
b518d92678 Merge pull request 'zerotier: allow to persist zerotier identities/ips/meshnames for non-controller' (#482) from zerotier into main 2023-11-10 10:59:48 +00:00
DavHau
39607a0925 api/schema: return list of missing modules 2023-11-10 15:07:15 +07:00
DavHau
97ea9312ac api/schema: don't crash on eval error 2023-11-10 14:27:03 +07:00
Jörg Thalheim
af0714132d clan: use .local/share as default for XDG_DATA_HOME 2023-11-09 17:45:24 +01:00
Jörg Thalheim
0206210b7e fix error message if clan flake does not exist 2023-11-09 17:44:44 +01:00
DavHau
2a6e329e40 api/schema: get schema without having a machine
Also done:
- add @pytest.mark.with_core indicating that a test depends on clan-core and cannot be cached
- separate unit tests into two derivations, ones that can be cached and ones that cannot.
- fix frontend typescript code
2023-11-09 15:30:25 +07:00
Qubasa
7240727b26 Added deal contract framework and testing documentation 2023-11-08 19:56:07 +01:00
DavHau
7e99454462 api/machines: better input/output validation
Also move contents tof 'config' to the top-level
2023-11-06 17:56:27 +07:00
lassulus
7b3d3e20b4 clan-cli secrets: flake_name -> flake_dir 2023-11-05 16:58:48 +01:00
Johannes Kirschbauer
6188957b65 format 2023-11-04 09:16:37 +01:00
Johannes Kirschbauer
fec748fbfd merge main 2023-11-04 09:15:15 +01:00
Qubasa
efa48052cf API: Added /api/flake/list. Added API grouping and description for better visibility 2023-11-03 22:05:33 +01:00
Jörg Thalheim
c5007ce7e3 fix clan_error_handler type 2023-11-03 14:48:14 +01:00
Jörg Thalheim
5cb4019942 switch from black to ruff for formatting 2023-11-03 13:38:13 +01:00
Jörg Thalheim
15dc4fd497 cli: merge nix options correctly 2023-11-03 13:31:36 +01:00
Jörg Thalheim
e1efaedc38 add nix option flag that is passed to underlying nix commands 2023-11-03 12:28:26 +01:00
Johannes Kirschbauer
8677c14aaa add create/join switch 2023-10-31 19:05:37 +01:00
Jörg Thalheim
d562c6ac5f vms/create: try virtio for vga
seems to suck less than std.
2023-10-31 15:34:53 +01:00
lassulus
370485403d switch flake to main branch again 2023-10-31 15:34:47 +01:00
lassulus
c9d7a96844 cli machines update: find flake dir automatic if not provided, support flake as path 2023-10-31 15:34:47 +01:00