Johannes Kirschbauer
c369f3b5d1
api/tasks: prefix impure actions with run
2025-07-07 12:09:43 +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
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
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
Johannes Kirschbauer
91df5c258e
lib/convert_inventory_to_machines: add classmethod for common conversion of Machine and InventoryMachine
2025-07-04 10:18:14 +02:00
Johannes Kirschbauer
fcb38820ec
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-04 10:02:06 +02:00
Johannes Kirschbauer
6d85cc0ff2
Clan_lib: add filtering by tag to list API
2025-07-04 09:48:21 +02:00
Johannes Kirschbauer
10fbae0c15
cli: move some references to duplicate list machines
2025-07-04 09:32:43 +02:00
Qubasa
aef1edf8e3
clan_lib: Move load_in_all_api_functions to clan_lib
2025-07-04 14:22:40 +07:00
Qubasa
18735a150f
clan_lib: Heavily simplified log_manager and test suite to concentrate on actually used features
2025-07-04 14:05:31 +07:00
Qubasa
c354a87765
clan_lib: Add better docstrings to log_manager
2025-07-04 13:35:34 +07:00
Qubasa
70d57cb267
clan_lib: expose log_manager with API.register properly
2025-07-04 13:19:09 +07:00
Qubasa
24b8cb799a
clan-cli: Print function name to raise for unsupported types by API.register
2025-07-04 13:17:01 +07:00