Commit Graph

1305 Commits

Author SHA1 Message Date
Qubasa
e9bfb129a1 clan-cli: Init clan machines import 2024-09-16 18:15:55 +02:00
Johannes Kirschbauer
27768aa04b Update: inventory classes check 2024-09-16 12:52:28 +00:00
Johannes Kirschbauer
dc57c3d948 CLI: api.register type preservation 2024-09-16 12:52:28 +00:00
Johannes Kirschbauer
f3a9a4e108 CLI: update classes 2024-09-16 12:52:28 +00:00
Johannes Kirschbauer
8bda488425 CLI: use abstract schema to avoid module imports 2024-09-15 18:42:50 +02:00
Qubasa
cafab5783f clan-cli: Moved flash to own subcommand 2024-09-15 15:53:17 +02:00
Qubasa
b8720a3c44 flash: Replace disks[str,str] with list[Disk] type 2024-09-15 11:43:40 +02:00
Qubasa
2897cd3e73 flash: Fix gnome automounting bug 2024-09-14 18:11:41 +02:00
Johannes Kirschbauer
813172119e API: rename set_inventory 2024-09-13 16:11:10 +02:00
Johannes Kirschbauer
ba548de2bf Serde: support deserialise Any typed values 2024-09-13 16:11:10 +02:00
Qubasa
60397e0ca4 clanCore: init machine_id_v3 2024-09-13 12:17:49 +02:00
DavHau
81cb28b6c0 vars/sops/shared: add machines key on demand 2024-09-12 20:17:05 +02:00
clan-bot
65a1a1a3b8 Merge pull request 'API: remove all python dataclasses for clanModules (services)' (#2080) from hsjobeki/clan-core:hsjobeki-main into main 2024-09-12 16:37:51 +00:00
Johannes Kirschbauer
406c88907d UI: include inventory schema and generated types 2024-09-12 18:22:46 +02:00
DavHau
eafcb0f870 vars/list: display '<not set>' also for secrets 2024-09-12 17:24:29 +02:00
DavHau
85477d51f6 vars: get rid of meta.json 2024-09-12 16:52:44 +02:00
DavHau
e905407989 vars/sops: load sops info from nix instead of filesystem 2024-09-12 16:30:21 +02:00
Johannes Kirschbauer
e3d85fc2b8 API: type all services with dict[str,Any] in python to reduce complexity. 2024-09-12 16:19:51 +02:00
Johannes Kirschbauer
1a81c1f84b API: remove all python dataclasses for clanModules (services) 2024-09-12 16:19:51 +02:00
a-kenji
56ce3d625c clanModules/state-version: init state-version
This adds a clanModule that will initialize the `system.stateVersion`
upon deploying the machine for the first time.

If the machine is completely reinstalled, then the state version might be
regenerated. But care should be taken if rebuilding from backups.
2024-09-12 15:47:30 +02:00
clan-bot
3ccdcbb8e8 Merge pull request 'Classgen: support literal enums' (#2068) from hsjobeki/clan-core:hsjobeki-main into main 2024-09-12 07:33:27 +00:00
Johannes Kirschbauer
a559a01fb7 Clan-cli: update import in classes 2024-09-12 09:28:58 +02:00
Johannes Kirschbauer
be9a398ae3 Clan-cli: fix class update instruction 2024-09-12 09:28:16 +02:00
a-kenji
6dd1a7395f vars: use correct paths for value accesses
Use correct paths for value accesses of vars under:

- `per-machine`
- `shared`
2024-09-11 19:02:43 +02:00
a-kenji
b13ed922b1 Revert "Merge pull request 'machine_id_v2' (#2052) from Qubasa/clan-core:machine_id_v2 into main"
This reverts commit 22a11abfe5, reversing
changes made to 208b71ac0e.
2024-09-10 14:01:12 +02:00
DavHau
a79ec63720 vars/password-store: implement upload and hashing 2024-09-09 22:13:16 +02:00
DavHau
0893b04458 vars/password-store: use standard paths; fix share flag 2024-09-09 21:20:03 +02:00
Qubasa
5c975a5eef clanCore: init machineId and diskId v2 2024-09-09 15:51:31 +02:00
DavHau
803f43dfd1 vars: improve generator pipeline
Compute the whole closure of to-be-executed generators upfront before executing anything

Properly compute closures for the 4 different scenarios:

1. full_closure: run all generators for a selected machine in topological order
2. all_missing_closure: run just the missing generators including their dependents
3. requested_closure: run only a selected list of generators including their missing dependencies and their dependents
4. minimal_closure: Run just enough to ensure that the list of selected generators are in a consistent state. Don't execute anything if nothing is missing.
2024-09-06 21:32:17 +02:00
Qubasa
2568002611 clan-cli: Make run_vm_in_thread fail fast. Fix generate_flake to support machine_id 2024-09-06 18:53:02 +02:00
Qubasa
4171d5ea4e clanCore: init machine_id.nix with clan.core.machine.{id,diskId} 2024-09-06 18:05:40 +02:00
DavHau
6bb93d087c vars: refactor - ask prompts before running any generators 2024-09-06 16:08:46 +02:00
DavHau
3089296328 clan-cli: fix cyclic import problem 2024-09-06 15:38:12 +02:00
DavHau
5cd9960ed4 vars: improve generator execution pipeline
- ensure all dependents are re-generated as well
- refactor: separate out computation of generator update closure
2024-09-06 14:30:49 +02:00
DavHau
a57525d5c6 vars: add api endpoint set_prompts 2024-09-04 18:06:11 +02:00
DavHau
ed1738c0cd vars: add get_prompts api endpoint
vars: add test for api endpoint get_prompts
2024-09-04 17:36:50 +02:00
DavHau
dc4fcb7329 vars: new option prompts.<name>.createFile 2024-09-04 15:48:10 +02:00
Johannes Kirschbauer
ebd7aa8422 API: add sops keyfile checks 2024-09-04 15:29:06 +02:00
Johannes Kirschbauer
5da72f65c0 UI/iwd: wifi machine module 2024-09-04 15:22:34 +02:00
clan-bot
87d47c7c31 Merge pull request 'apply TRY lint' (#2035) from joerg-ci into main 2024-09-04 13:20:11 +00:00
DavHau
3f23ad4f79 vars: set vars via cli; improve getting vars via cli; 2024-09-04 14:48:42 +02:00
DavHau
59593c2e39 vars: add 'get' command to cli 2024-09-03 19:19:20 +02:00
Jörg Thalheim
5ac3ac63c2 get rid of ValueError 2024-09-03 18:14:31 +02:00
Jörg Thalheim
29909e49d3 apply TRY lint 2024-09-03 18:13:46 +02:00
Johannes Kirschbauer
caad48682d serde/fix: round trip string sanitizing 2024-09-03 18:03:13 +02:00
Johannes Kirschbauer
e4f077f2e2 Fix cyclic imports: __init__.py are automatically imported 2024-09-03 17:24:31 +02:00
Johannes Kirschbauer
facc0bd226 UI: Init iwd service for single wifi 2024-09-03 17:24:31 +02:00
DavHau
924f5e41c6 vars: global metadata paths for all store backends
This also changes the paths where sops stores teh secret -> all sops secrets will have to be re-generated
2024-09-03 16:30:01 +02:00
clan-bot
e05d09ee55 Merge pull request 'UI: Admin shh module' (#2031) from hsjobeki/clan-core:hsjobeki-main into main 2024-09-03 09:03:42 +00:00
Johannes Kirschbauer
4f80fab225 UI: Admin shh module 2024-09-03 10:57:01 +02:00