hsjobeki
155bd36d2b
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
40ea5bf591
api/machine checks: rename, add checkResult
2025-07-07 13:13:00 +02:00
hsjobeki
0cd9c84de0
Merge pull request 'machine/host: degrade into info and add docs' ( #4238 ) from host-info into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4238
Reviewed-by: Luis Hebendanz <consulting@qube.email >
2025-07-07 11:10:05 +00:00
Johannes Kirschbauer
e1ea44a2cc
api/clan: rename 'update_clan_meta' -> 'set_clan_details'
2025-07-07 12:51:32 +02:00
DavHau
61edc1e06f
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
c369f3b5d1
api/tasks: prefix impure actions with run
2025-07-07 12:09:43 +02:00
hsjobeki
0cc1f072f7
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
a2a011a47f
machine/host: degrade into info and add docs
2025-07-07 11:52:46 +02:00
Johannes Kirschbauer
e1b4f296e3
api: rename 'show_mdns' -> 'list_mdns_services'
2025-07-07 10:49:46 +02:00
Johannes Kirschbauer
84703fa293
docs: improve docstring for 'list_block_devices'
2025-07-07 10:46:26 +02:00
Johannes Kirschbauer
0e10122d54
api/clan: rename 'show_clan_meta' -> 'get_clan_details'
2025-07-07 10:41:00 +02:00
hsjobeki
5436f284fb
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
00df032635
vars/api: rename 'get_generators_closure' into 'get_machine_generators'
2025-07-06 20:57:42 +02:00
Johannes Kirschbauer
a2c016718a
api/hardware: consolidate into 'describe_machine_hardware'
2025-07-06 20:57:42 +02:00
Johannes Kirschbauer
d1abebf068
api/inventory: remove 'inventory' from api entirely
2025-07-06 20:57:42 +02:00
Johannes Kirschbauer
0589c71601
Vars: rename public functions into 'create_machine_vars'
2025-07-06 20:57:42 +02:00
Johannes Kirschbauer
2b3e847c28
machine: rename standalone 'get_host' to 'get_machine_host'
2025-07-06 19:47:58 +02:00
Johannes Kirschbauer
4df4f5220b
Templates: remove InputPrio and related classes
2025-07-06 19:08:45 +02:00
Johannes Kirschbauer
7ad8ed1af0
Templates: fix invalid mock flake
2025-07-06 16:43:38 +02:00
Johannes Kirschbauer
1502cfa4a7
Templates: migrate clan templates to flake identifiers
2025-07-06 15:37:10 +02:00
Johannes Kirschbauer
cce0207225
Templates: remove outdated check for 'configuration.nix' in machine templates
2025-07-06 15:37:10 +02:00
Johannes Kirschbauer
38f98645ac
Templates: replace leftover MachineID, by Machine
2025-07-06 15:37:10 +02:00
Johannes Kirschbauer
74d2ae0619
templates_url: add clan template url test
2025-07-06 15:37:10 +02:00
lassulus
c122201ff2
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
e72795904d
Revert "make host key check an enum instead of an literal type"
...
This reverts commit 543c518ed0 .
2025-07-06 14:51:19 +02:00
hsjobeki
32ddb4ffa7
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
db6220b57b
Templates/list: display templates via exposed nix value
2025-07-06 14:37:03 +02:00
lassulus
e929f36f80
Merge pull request 'vars/password-store: replace passBackend option with passPackage' ( #4134 ) from lassulus/passage_compat into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4134
2025-07-06 11:44:27 +00:00
lassulus
bd82de6001
fix(flake): handle file paths with line numbers in cache existence check
...
The is_cached method now correctly handles store paths that have line
numbers appended (e.g., /nix/store/file.nix:123:456). Previously, these
paths would fail the existence check because the exact path with line
numbers doesn't exist as a file.
The fix adds a helper method that:
- First checks if the exact path exists
- If not, and the path contains colons, validates that the suffix
consists only of numbers (line:column format)
- If valid, strips the line numbers and checks the base file path
This ensures that cached references to specific file locations are
properly validated while avoiding false positives with files that
have colons in their names.
2025-07-06 12:44:15 +02:00
adeci
06613de825
clan-cli: fix incorrect field name in deploy warning messages. The warning for missing buildHost/targetHost always showed targetHost in the path, even when buildHost was the missing field.
2025-07-06 12:44:02 +02:00
Johannes Kirschbauer
a6b8ca06ab
machines/list: rename helper to instantiate_inventory_to_machines
2025-07-06 12:24:16 +02:00
Johannes Kirschbauer
f7faf2cd63
machines/list: remove duplicate query_machines_by_tags
2025-07-06 12:23:47 +02:00
Johannes Kirschbauer
d0613b4030
cli: return validated list from validate_machine_names
2025-07-06 12:22:00 +02:00
Johannes Kirschbauer
52b711667e
lib/get_host: improve abstraction, turn missconfiguration into a warning
...
Motivation: A warning should encourage consistent usage of inventory.machines setting targetHost inside the machine should be considered a custom override
Changing the warning strings to avoid the term 'nix'/'json' both inventory and nixos machines are nix features
2025-07-06 12:08:00 +02:00
lassulus
195134dd5e
clan_cli: better select debug output
2025-07-06 01:17:55 +02:00
lassulus
0670f0ad32
clan_cli flake: remove apply from select, as it will break stuff in horrible ways
...
Since apply changes the structure of the retuned value, the cache will
be confused about the structure and in subsequent request will use this
wrong structure.
For example: we would use builtins.attrNames on inputs, the flake will
forever think that inputs is a list of strings and will report errors
whenever we try to fetch subkeys from it
2025-07-06 01:17:55 +02:00
lassulus
daf843eeab
clan_cli run: add trace runOption to disable verbose traces in debug mode
2025-07-05 19:48:50 +02:00
DavHau
448e60f866
refactor: remove Machine.vars_generators() method
...
Replace all calls to machine.vars_generators() with direct calls to
Generator.generators_from_flake() to make the dependency more explicit
and remove unnecessary indirection.
This reduces coupling to the Machine class, making the codebase more
modular and easier to refactor in the future.
2025-07-05 15:26:31 +07:00
Mic92
3f6e5968b5
Merge pull request 'Qubasa-hsjobeki/bump-nixpkgs' ( #4205 ) from Qubasa-hsjobeki/bump-nixpkgs into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4205
2025-07-04 16:47:23 +00:00
Jörg Thalheim
76503b2a92
terminate_process_group: also properly yield iterator when we return early
2025-07-04 18:39:01 +02:00
Jörg Thalheim
65904d8d8e
clan-cli: handle None in union types to prevent TypeError
...
Add comprehensive test coverage for union types with None to prevent
regression of the issubclass() TypeError that was occurring when
checking if None is in a union type.
2025-07-04 18:39:01 +02:00
Mic92
cb9284360f
Merge pull request 'change install test to run clan outside of the VM' ( #3906 ) from vm-test into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3906
2025-07-04 15:17:14 +00:00
Qubasa
3f1fdc0aae
treefmt/ruff: Set python lint version to 3.13. Fix all new lints coming up.
2025-07-04 17:11:31 +02:00
Jörg Thalheim
76e653f37f
nixoTestLib: split setting up function for port-forwarding and setuping up flake
2025-07-04 16:56:42 +02:00
Jörg Thalheim
543c518ed0
make host key check an enum instead of an literal type
...
this is more typesafe at runtime.
2025-07-04 14:36:05 +02:00
pinpox
ae9d219dea
Merge branch 'main' into state-version-option-again
2025-07-04 11:56:15 +00:00
hsjobeki
a44740d902
Merge pull request 'Clan_lib: add filtering by tag to list API' ( #4197 ) from cli-fixup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4197
2025-07-04 11:53:43 +00:00
Luis Hebendanz
79560ac202
Merge pull request 'clan-app: Implement dynamic groups and array based filtering of logs and groups' ( #4190 ) from Qubasa/clan-core:add_clan_group into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4190
2025-07-04 11:06:50 +00:00
Qubasa
52aaad272f
clan-app: Implement dynamic log groups into javascript callApi
...
nix fmt
2025-07-04 17:49:00 +07:00
pinpox
a0a9cef2a6
Add state-version nixos option
...
This reverts commit 695574988e .
2025-07-04 11:54:12 +02:00