Commit Graph

1830 Commits

Author SHA1 Message Date
Qubasa
8c3bfd498d flash: Use f2fs for installer 2024-09-13 15:48:57 +02:00
Qubasa
787599ebb6 clanCore: init machine_id_v3 2024-09-13 12:17:49 +02:00
DavHau
a1dd10f502 vars/sops/shared: add machines key on demand 2024-09-12 20:17:05 +02:00
clan-bot
2fc5572ff7 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
e1eaf44ae5 UI: update gitignore 2024-09-12 18:33:47 +02:00
Johannes Kirschbauer
c554d7ddfb UI: include inventory schema and generated types 2024-09-12 18:22:46 +02:00
DavHau
067d287398 vars/list: display '<not set>' also for secrets 2024-09-12 17:24:29 +02:00
DavHau
53592837a9 vars: get rid of meta.json 2024-09-12 16:52:44 +02:00
DavHau
3c27cc31e9 vars/sops: load sops info from nix instead of filesystem 2024-09-12 16:30:21 +02:00
Johannes Kirschbauer
f2a2b8e893 API: type all services with dict[str,Any] in python to reduce complexity. 2024-09-12 16:19:51 +02:00
Johannes Kirschbauer
39518d302b API: remove all python dataclasses for clanModules (services) 2024-09-12 16:19:51 +02:00
a-kenji
66c0517dfe 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
5f10c5fc81 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
4b56605340 Clan-cli: update import in classes 2024-09-12 09:28:58 +02:00
Johannes Kirschbauer
6a4c9e988b Clan-cli: fix class update instruction 2024-09-12 09:28:16 +02:00
a-kenji
4d2ad709ad 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
Johannes Kirschbauer
ef18b3e2e9 Classgen: support literal enums 2024-09-11 15:14:02 +02:00
a-kenji
f1b857f4ae Revert "Merge pull request 'machine_id_v2' (#2052) from Qubasa/clan-core:machine_id_v2 into main"
This reverts commit 68a72a4156, reversing
changes made to 7af3e80249.
2024-09-10 14:01:12 +02:00
DavHau
54cb6862b1 vars/password-store: implement upload and hashing 2024-09-09 22:13:16 +02:00
DavHau
59e78e0560 merge-after-ci: unstash only if stashed 2024-09-09 22:05:49 +02:00
DavHau
6fafafa064 vars/password-store: use standard paths; fix share flag 2024-09-09 21:20:03 +02:00
DavHau
52dfee1d80 merge-after-ci: don't run treefmt on uncommitted changes
stash changes before running formatter
2024-09-09 20:51:37 +02:00
DavHau
5bc6cff384 select-shell: show available names if provided name is incorrect 2024-09-09 20:48:44 +02:00
Qubasa
a0b3275ed1 clanCore: init machineId and diskId v2 2024-09-09 15:51:31 +02:00
clan-bot
e4e21a7c1f Merge pull request 'revert machine_id pull request' (#2051) from Qubasa/clan-core:Qubasa-revert-machine-id into main 2024-09-06 19:45:05 +00:00
Qubasa
323010bb04 revert machine_id pull request 2024-09-06 21:38:50 +02:00
DavHau
b3dd36bdb6 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
2b5cdd66f9 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
b16a53f510 clanCore: init machine_id.nix with clan.core.machine.{id,diskId} 2024-09-06 18:05:40 +02:00
DavHau
f5e65b5d0e vars: refactor - ask prompts before running any generators 2024-09-06 16:08:46 +02:00
DavHau
b13081a84c tea-create-pr: get rid of runtime nix eval
...instead use our treefmt wrapper derivation which is exactly the same
but doesn't require an eval at runtime
2024-09-06 15:46:15 +02:00
DavHau
9d86c5474f clan-cli: fix cyclic import problem 2024-09-06 15:38:12 +02:00
DavHau
f161c7ca58 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
1254b80a52 vars: add api endpoint set_prompts 2024-09-04 18:06:11 +02:00
DavHau
112982a7fb vars: add get_prompts api endpoint
vars: add test for api endpoint get_prompts
2024-09-04 17:36:50 +02:00
DavHau
bd554ca392 vars: new option prompts.<name>.createFile 2024-09-04 15:48:10 +02:00
Johannes Kirschbauer
3b0d694a07 API: add sops keyfile checks 2024-09-04 15:29:06 +02:00
Johannes Kirschbauer
035344e47c UI/iwd: wifi machine module 2024-09-04 15:22:34 +02:00
clan-bot
87c5ded6a2 Merge pull request 'apply TRY lint' (#2035) from joerg-ci into main 2024-09-04 13:20:11 +00:00
DavHau
570aadf065 vars: set vars via cli; improve getting vars via cli; 2024-09-04 14:48:42 +02:00
Johannes Kirschbauer
ace1598977 UI/refactor: unify clan details and edit 2024-09-04 10:16:08 +02:00
DavHau
e3280e2b1d vars: add 'get' command to cli 2024-09-03 19:19:20 +02:00
Jörg Thalheim
f18771364c get rid of ValueError 2024-09-03 18:14:31 +02:00
Jörg Thalheim
403b9cf2cc apply TRY lint 2024-09-03 18:13:46 +02:00
Jörg Thalheim
68d777166a classgen: use own Exception type 2024-09-03 18:13:18 +02:00
Johannes Kirschbauer
5defa9d49d serde/fix: round trip string sanitizing 2024-09-03 18:03:13 +02:00
Johannes Kirschbauer
c9b3775f72 Fix cyclic imports: __init__.py are automatically imported 2024-09-03 17:24:31 +02:00
Johannes Kirschbauer
6e595c3f60 UI: Init iwd service for single wifi 2024-09-03 17:24:31 +02:00
DavHau
8efcd65bed 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
027e704534 Merge pull request 'UI: Admin shh module' (#2031) from hsjobeki/clan-core:hsjobeki-main into main 2024-09-03 09:03:42 +00:00