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
lassulus
a6409f921b
refactor: remove _serialized field and implement efficient vars selection
...
- Remove _serialized field from vars interface to prevent serialization
errors with throwing passBackend field
- Implement direct selection of generator fields using multi-select syntax
- Refactor vars_generators() to use new Generator.from_flake() method that
selects only safe fields (avoiding non-serializable values)
- Remove unused legacy methods: Generator.from_json(), Var.from_json(),
Prompt.from_json()
- Update precaching to match new selection approach
This fixes the serialization errors that were preventing vars from working
with the new password-store implementation by avoiding the problematic
_serialized field entirely.
2025-07-03 18:53:36 +02:00
Johannes Kirschbauer
b6f00ed1f6
test: enable unsafe teardown of tempDir
...
aarch64 libc or kernel might be stricter in keeping files locked while they're open.
This causes failed teardown of the tmpdir
2025-07-02 09:27:05 +02:00
Johannes Kirschbauer
ae274d6b82
buildClan: replace all usages by lib.clan
2025-07-01 11:56:31 +02:00
lassulus
286c75a142
refactor: replace eval_nix/build_nix with machine.select()
...
- Remove nix(), eval_nix(), and build_nix() methods from Machine class
- Add select() method that handles machine-specific attribute prefixes
- Update all usages to use machine.select() directly
- Handle Path conversion and tmp_store logic at call sites
- This simplifies the Machine API and prepares for deployment.json removal
2025-06-29 17:00:27 +02:00
Qubasa
3a772a5f56
Revert "Cleanup templates"
...
This reverts commit a3a81a959a .
2025-06-28 22:42:39 +07:00
Qubasa
277ef4f946
Revert "templates/minimal: consistent input names"
...
This reverts commit c847766f9e .
2025-06-28 22:42:20 +07:00
Qubasa
99d3e4ec11
Revert "tests/create_clan: bring back read,write checks"
...
This reverts commit 7f6684998b .
2025-06-28 22:42:11 +07:00
Qubasa
b14357a4e0
Revert "templates: fix tests"
...
This reverts commit 7ce29938e9 .
2025-06-28 22:41:31 +07:00
Qubasa
ba19aa8810
Revert "templates: remove .clan-flake"
...
This reverts commit bf377bd4e0 .
2025-06-28 22:40:55 +07:00
Mic92
24fcc9a647
Merge pull request 'don't keep appending --impure to nix_options when running tests' ( #4128 ) from speed-up-flake-select into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4128
2025-06-28 07:26:16 +00:00
Jörg Thalheim
43df2c9a14
fix unlocked flake.lock in tests
2025-06-28 08:50:41 +02:00
hsjobeki
8a7daddad4
Merge pull request 'Update clan templates' ( #4099 ) from update-templates-services into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4099
2025-06-27 17:25:22 +00:00
Johannes Kirschbauer
bf377bd4e0
templates: remove .clan-flake
2025-06-27 19:14:21 +02:00
Johannes Kirschbauer
7ce29938e9
templates: fix tests
2025-06-27 19:14:21 +02:00
kenji
a624cb34ee
Merge pull request 'pkgs/clan: Add machine validator with suggestion logic' ( #4112 ) from ke-machines-update into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4112
2025-06-27 11:09:05 +00:00
a-kenji
3e70e30b6b
pkgs/clan: Add machine validator with suggestion logic
...
Add machine validator with suggestion logic to:
- `clan machines update`
- `clan machines delete`
- `clan machines update-hardware-config`
2025-06-27 12:32:36 +02:00
Johannes Kirschbauer
7f6684998b
tests/create_clan: bring back read,write checks
2025-06-27 11:04:31 +02:00
Johannes Kirschbauer
c847766f9e
templates/minimal: consistent input names
2025-06-27 11:04:31 +02:00
pinpox
a3a81a959a
Cleanup templates
2025-06-27 10:39:59 +02:00
a-kenji
6188583885
pkgs/clan: Improve error message on clan secrets users add
...
Improve error message on `clan secrets users add [user] --age-key
`AGE-PLUGIN-YUBIKEY`
Since there is no way to get the recipient through the AGE-PLUGIN-YUBIKEY,
we should fail fast and give an actionable error to the user.
2025-06-25 17:30:59 +02:00
a-kenji
b14a15407c
pkgs/clan-cli: Fix typo in sshd test
2025-06-25 10:13:06 +02:00
Qubasa
d14a5d34fd
clan-lib: Move nix_options from Machine class to Flake class
2025-06-24 19:03:20 +02:00
kenji
f288b8c1ef
Merge pull request 'pkgs/clan: Add --tags support to clan machines update' ( #4061 ) from kenji/pkgs/clan: Add --tags support to clan machines update into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4061
2025-06-24 09:43:35 +00:00
a-kenji
5b04cfc06a
pkgs/clan: Add --tags support to clan machines update
2025-06-23 23:51:43 +02:00
Qubasa
217f55adec
clan-cli: Simplify HostKeyCheck to a Literal instead of an Enum
2025-06-23 15:08:44 +02:00
Michael Hoang
6b4df65412
cli: don't error when more than one SOPS key found locally
2025-06-13 14:37:19 +07:00
Johannes Kirschbauer
8ca3dc36d7
Chore(templates): move helper functions into a util file
2025-06-10 19:38:10 +02:00
Johannes Kirschbauer
55a92f1893
Fix(tests/substitutions): use different substitutions for nix-build and local environment
2025-06-10 15:34:56 +02:00
Johannes Kirschbauer
de32037255
Fix(tests/templates): add narHash to allow local tests execution in devShell
2025-06-10 12:36:58 +02:00
DavHau
7cf065ae8c
buildClan function: export all machines via nixosModules/darwinModules
...
We want each machine not only to be exposed via nixosConfigurations but also as a module.
This allows re-importing the machine in tests and override the architecture for example.
2025-06-09 12:51:22 +00:00
lassulus
2460ac970f
Revert "clan-cli: Use Remote class in DeployInfo, add tests for qrcode parser and json parser"
...
This reverts commit 2ca3b5d698 .
2025-06-09 11:28:15 +02:00
Qubasa
2ca3b5d698
clan-cli: Use Remote class in DeployInfo, add tests for qrcode parser and json parser
2025-06-07 00:51:24 +02:00
Jörg Thalheim
e733619139
test_upload_single_file: add missing ssh_control_master
2025-05-28 20:25:53 +02:00
Jörg Thalheim
14324a059b
move test_ssh_remote to remote_test
2025-05-28 20:13:48 +02:00
Jörg Thalheim
f06313d5b2
add sudo_askpass_proxy
2025-05-28 16:21:30 +02:00
Johannes Kirschbauer
19dbc0ff73
chore(nix_models): migrate import to use exported clan models
2025-05-28 14:03:22 +02:00
Johannes Kirschbauer
dac30c4dd7
refactor(persist/utils): rename apply_patch to 'set_value_by_path'
2025-05-28 10:16:48 +02:00
Johannes Kirschbauer
ec6fddce03
Fix(test): migrate machine cli command tests to use the new functions
2025-05-27 17:57:08 +02:00
Johannes Kirschbauer
3ed3cdddc9
Feat(inventory): remove legacy action functions
...
Inventory should only and always be accessed through the inventory store.
Manually reading and writing to the json file is highly insecure
2025-05-27 17:20:04 +02:00
Johannes Kirschbauer
de25fda5b3
fix(tests): use inventory store to interact with the inventory
2025-05-23 21:46:35 +02:00
Qubasa
0ca7600439
clan-cli: Move Machine object to clan_lib
2025-05-22 19:11:19 +02:00
Qubasa
cff5d61f26
clan-cli: Rename Host -> Remote move to clan_lib and mark as frozen
2025-05-22 14:08:27 +02:00
DavHau
c45c94e045
GUI: add credentials page (vars)
...
add it to machine details
2025-05-21 11:47:04 +00:00
lassulus
80229c5e77
clan-cli: clan_cli.inventory -> clan_lib.inventory
2025-05-21 12:06:38 +02:00
Johannes Kirschbauer
d9e4c93509
Refactor(clan_lib): move serde tests next to serde module
2025-05-21 09:36:00 +02:00
hsjobeki
38159d85f7
Merge pull request 'feat(docs,api): expose inventory.instances interface' ( #3721 ) from hsjobeki/clan-core:inventory-services-1 into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3721
2025-05-20 15:29:14 +00:00
lassulus
3457542871
clan-cli: clan_cli.templates -> clan_lib.templates
2025-05-20 16:08:02 +02:00
Johannes Kirschbauer
f6544d1cda
Feat(jsonschema): convert deferredModule to unknown
2025-05-20 15:48:28 +02:00
lassulus
ec19ef1ec5
clan-cli: clan_cli.custom_logger -> clan_lib.custom_logger
2025-05-20 15:08:02 +02:00