Commit Graph

1011 Commits

Author SHA1 Message Date
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
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
Johannes Kirschbauer
4b56605340 Clan-cli: update import in classes 2024-09-12 09:28:58 +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
6fafafa064 vars/password-store: use standard paths; fix share flag 2024-09-09 21:20:03 +02:00
Qubasa
a0b3275ed1 clanCore: init machineId and diskId v2 2024-09-09 15:51:31 +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
DavHau
f5e65b5d0e vars: refactor - ask prompts before running any generators 2024-09-06 16:08:46 +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
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
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
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
Johannes Kirschbauer
2e4aca9c40 UI: Admin shh module 2024-09-03 10:57:01 +02:00
Jörg Thalheim
e6ae896ba1 flash: rename FileNotFoundError -> ClanError 2024-09-03 10:53:17 +02:00
Jörg Thalheim
44813d2fcc only accept eval/build for nix command 2024-09-03 10:49:53 +02:00
DavHau
2621a961e7 vars: make simplify vars store abstraction 2024-09-02 18:44:00 +02:00
clan-bot
52707d333d Merge pull request 'use pathlib everywhere' (#2023) from type-checking into main 2024-09-02 16:33:46 +00:00
Jörg Thalheim
659e5b37dd use pathlib everywhere 2024-09-02 18:26:13 +02:00
Johannes Kirschbauer
aceae9aa1e API: types schema improve typescript performance 2024-09-02 18:03:44 +02:00
Jörg Thalheim
af0a1dd3f2 use pathlib 2024-09-02 17:40:05 +02:00
Jörg Thalheim
357b619068 add SIM lint 2024-09-02 16:39:30 +02:00
Jörg Thalheim
f6e2c11eb8 add SLF lint 2024-09-02 16:25:06 +02:00
Jörg Thalheim
ad3daa3ce4 add RET, Q, RSE lint 2024-09-02 15:58:49 +02:00
Jörg Thalheim
078cab47bf add FA, ICN, ISC, LOG, PIE and PYI linting 2024-09-02 15:41:56 +02:00
Johannes Kirschbauer
5cfa72edcc UI: AdminSettings page 2024-09-02 15:08:36 +02:00
Johannes Kirschbauer
3b526955a2 API: init iwd clanModule inventory 2024-09-02 15:06:55 +02:00
Jörg Thalheim
15ff74f7c2 enable ASYNC, DTZ, YTT and EM lints 2024-09-02 14:07:06 +02:00
Jörg Thalheim
e9a266001c enable comprehensions linting rules 2024-09-02 13:35:52 +02:00
Jörg Thalheim
35839ef701 enable bug-bear linting rules 2024-09-02 13:26:07 +02:00
Jörg Thalheim
af4b9cc2d5 make all same-module imports relative, the rest absolute
This makes sorting more consitent.
2024-09-02 13:00:19 +02:00
Jörg Thalheim
f3a2b4d80e fix all typing error in tests 2024-09-02 12:23:13 +02:00
DavHau
2ec3abb24c vars: improve check command and add tests 2024-09-01 16:45:09 +02:00
DavHau
8ad90aa44f vars: fix listing vars + add test 2024-09-01 16:10:25 +02:00
DavHau
6f4827bde4 vars: implement listing all vars 2024-09-01 16:03:37 +02:00
DavHau
ec055f7606 vars: introduce deploy=true/false for generated files 2024-09-01 14:32:46 +02:00
lassulus
72615f7575 password_store: create secrets with correct permissions 2024-08-30 12:13:00 +02:00