hsjobeki
7096ed8959
Merge pull request 'API Improvements' ( #4276 ) from api-cleanup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4276
2025-07-08 21:17:12 +00:00
kenji
07f30928e6
Merge pull request 'refactor: decouple vars stores from machine instances' ( #4269 ) from davhau/vars-new into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4269
2025-07-08 18:11:03 +00:00
Johannes Kirschbauer
4beff2e023
api: rename 'run_machine_deploy' into 'run_machine_update'
2025-07-08 17:21:18 +02:00
Johannes Kirschbauer
dbafd01482
api/disk_schema: make getter consistent
2025-07-08 17:20:59 +02:00
a-kenji
5c960cfdab
pkgs/cli: Add regression test for clan show
2025-07-08 15:55:01 +02:00
hsjobeki
e10b2fd954
Merge pull request 'Templates/default: move clan configuration into its own file' ( #4262 ) from templates into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4262
2025-07-08 13:46:19 +00:00
Johannes Kirschbauer
43cda7d13a
Tests: dont expect a hardware-configuration.nix file
2025-07-08 15:34:16 +02:00
Johannes Kirschbauer
1a861cd889
tests: dont expect .clan-flake file, it is not strictly required
2025-07-08 14:58:24 +02:00
DavHau
0aa6288edb
refactor: decouple vars stores from machine instances
...
Stores now get machine context from generator objects instead of storing
it internally. This enables future machine-independent generators and
reduces coupling.
- StoreBase.__init__ only takes flake parameter
- Store methods receive machine as explicit parameter
- Fixed all callers to pass machine context
2025-07-08 18:30:16 +07:00
Qubasa
152ac2c07e
clan-cli: Fix Ruff linting errors
...
clan-cli: Ruff fixes
ignore noqa lint
fix more ruff issues
2025-07-08 17:25:02 +07:00
Qubasa
f854c39292
clan-cli: Fix regression in ruff linter, where linter rules got overriden by local pyproject.toml
...
clan-app: Fix ruff regression where linter rules got overriden by local pyproject.toml
2025-07-08 17:23:32 +07:00
Johannes Kirschbauer
0cbdfb26f1
test: don't expect a machines folder
2025-07-08 11:53:20 +02:00
Johannes Kirschbauer
f691f5a310
clan/show: fix cli command
2025-07-08 10:15:35 +02:00
Johannes Kirschbauer
91f7f21b0c
Templates: remove 'minimal-flake-parts'
2025-07-07 15:50:00 +00:00
Johannes Kirschbauer
5d6a0c9883
templates: rename 'new_clan' to default
2025-07-07 15:50:00 +00:00
hsjobeki
ad997319fa
Merge pull request 'Docs: add missing documentation to api functions' ( #4243 ) from api-cleanup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4243
2025-07-07 14:02:08 +00:00
Johannes Kirschbauer
a99ab3d3ca
docs/api: add docstrings to {get_flash_options, run_machine_flash}
2025-07-07 15:34:49 +02:00
Johannes Kirschbauer
7ab0e8377b
docs/api: add docstrings to {get_generators, run_generators}
2025-07-07 15:22:44 +02:00
hsjobeki
0532284387
Merge pull request 'api/generators: remove term 'vars' interact purely with 'generators'' ( #4242 ) from api-cleanup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4242
2025-07-07 13:04:00 +00:00
Johannes Kirschbauer
5b6f5e812b
api/hw: rename generate_machine_hardware_info into 'run'
2025-07-07 14:04:39 +02:00
Johannes Kirschbauer
fcc3387332
api/generators: remove term 'vars' interact purely with 'generators'
2025-07-07 13:59:12 +02:00
hsjobeki
7001a82196
Merge pull request 'api/tasks: prefix impure actions with run' ( #4239 ) from api-cleanup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4239
2025-07-07 11:28:07 +00:00
Johannes Kirschbauer
6560738502
api/machine checks: rename, add checkResult
2025-07-07 13:13:00 +02:00
Johannes Kirschbauer
19d86cc431
api/clan: rename 'update_clan_meta' -> 'set_clan_details'
2025-07-07 12:51:32 +02:00
Johannes Kirschbauer
97c27b9449
api/keygen: add todo comment
2025-07-07 12:49:37 +02:00
Johannes Kirschbauer
1180ace4d7
api/admin: remove maybe_get_admin_public_keys
2025-07-07 12:43:11 +02:00
DavHau
ed0b86385b
Refactor StoreBase to take machine name string instead of Machine object
...
- Updated StoreBase.__init__ to accept machine: str and flake: Flake
- Modified all StoreBase subclasses (in_repo, vm, fs, sops, password_store) to match new signature
- Added select_machine method to Flake class for machine-specific attribute selection
- Updated Machine.select to use the new Flake.select_machine method
- Fixed all test cases to pass machine name and flake to store constructors
- Maintained backward compatibility by keeping the same external API
This reduces coupling between the store system and the Machine class,
making the architecture more modular and flexible.
2025-07-07 10:24:11 +00:00
Johannes Kirschbauer
3a237796d9
api/tasks: prefix impure actions with run
2025-07-07 12:09:43 +02:00
hsjobeki
979d5dcdd1
Merge pull request 'api/clan: rename 'show_clan_meta' -> 'get_clan_details'' ( #4236 ) from api-cleanup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4236
2025-07-07 10:00:10 +00:00
Johannes Kirschbauer
972059ebe4
api: rename to get_flash_options
2025-07-07 10:48:14 +02:00
Johannes Kirschbauer
1c33f30135
api/clan: rename 'show_clan_meta' -> 'get_clan_details'
2025-07-07 10:41:00 +02:00
Michael Hoang
5667ad2994
cli: don't log every public key we find
2025-07-07 15:23:46 +10:00
lassulus
ccd7e3d91d
vars password-store: fix secret mangling due to string encoding
2025-07-07 02:35:17 +02:00
lassulus
bbb7773567
rename lingering clan.vars -> clan.core.vars
2025-07-07 00:59:52 +02:00
hsjobeki
891402760f
Merge pull request 'API: refactor into resource oriented names' ( #4223 ) from api-cleanup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4223
2025-07-06 19:11:31 +00:00
Johannes Kirschbauer
045e297438
vars/api: rename 'get_generators_closure' into 'get_machine_generators'
2025-07-06 20:57:42 +02:00
Johannes Kirschbauer
360766f7a6
api/flash: refactor into 'list_flash_options'
2025-07-06 20:57:42 +02:00
Johannes Kirschbauer
ad48771c98
vars/api: rename, unregister some unused vars functions
2025-07-06 20:57:42 +02:00
Johannes Kirschbauer
7370212ec2
Vars: rename public functions into 'create_machine_vars'
2025-07-06 20:57:42 +02:00
Johannes Kirschbauer
3af529d76e
Vars: rename 'keygen' to 'create_secrets_user'
2025-07-06 20:57:42 +02:00
Johannes Kirschbauer
76da95c6ba
Templates/cli: move display command into it own category
2025-07-06 19:36:57 +02:00
Johannes Kirschbauer
d49ff467db
Templates: remove InputPrio and related classes
2025-07-06 19:08:45 +02:00
Johannes Kirschbauer
f2db543651
Templates: migrate clan templates to flake identifiers
2025-07-06 15:37:10 +02:00
lassulus
5845b3f90d
Merge pull request 'Revert "make host key check an enum instead of an literal type"' ( #4220 ) from revert_host_key_check into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4220
2025-07-06 13:19:00 +00:00
lassulus
045b250f9a
Revert "make host key check an enum instead of an literal type"
...
This reverts commit 3d83017acd .
2025-07-06 14:51:19 +02:00
hsjobeki
254569481a
Merge pull request 'Templates/list: display templates via exposed nix value' ( #4219 ) from templates-list into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4219
2025-07-06 12:49:58 +00:00
Johannes Kirschbauer
adb726c318
Templates/list: display templates via exposed nix value
2025-07-06 14:37:03 +02:00
lassulus
2f0f9a9fba
vars/password-store: replace passBackend option with passPackage
...
The `clan.core.vars.settings.passBackend` option has been replaced with
`clan.vars.password-store.passPackage` to provide better type safety and
clearer configuration.
Changes:
- Remove problematic mkRemovedOptionModule that caused circular dependency
- Add proper option definition with assertion-based migration
- Users setting the old option get clear migration instructions
- Normal evaluation continues to work for users not using the old option
Migration: Replace `clan.core.vars.settings.passBackend = "passage"`
with `clan.vars.password-store.passPackage = pkgs.passage`
2025-07-06 12:46:39 +02:00
Johannes Kirschbauer
87fc3e01d1
cli/update: refactor machine selection logic into 'get_machines_for_update'
2025-07-06 12:27:28 +02:00
Johannes Kirschbauer
605a0242c2
CLI: update requireExplicitUpdate in help
2025-07-06 12:22:25 +02:00