Commit Graph

1078 Commits

Author SHA1 Message Date
DavHau
bd79e6aef6 vars: generate proper commit messages
fixes #2126
2024-09-17 20:22:18 +02:00
Johannes Kirschbauer
72f79dee37 Inventory: docs improvements 2024-09-16 22:52:40 +02:00
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
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
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
Johannes Kirschbauer
a559a01fb7 Clan-cli: update import in classes 2024-09-12 09:28:58 +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
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
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
Jörg Thalheim
aa564f47a9 flash: rename FileNotFoundError -> ClanError 2024-09-03 10:53:17 +02:00
Jörg Thalheim
ddd2a1a4f7 only accept eval/build for nix command 2024-09-03 10:49:53 +02:00
DavHau
6e16e54968 vars: make simplify vars store abstraction 2024-09-02 18:44:00 +02:00
clan-bot
47c3ce2604 Merge pull request 'use pathlib everywhere' (#2023) from type-checking into main 2024-09-02 16:33:46 +00:00
Jörg Thalheim
1fa0e72bea use pathlib everywhere 2024-09-02 18:26:13 +02:00
Johannes Kirschbauer
9eb56f274b API: types schema improve typescript performance 2024-09-02 18:03:44 +02:00