DavHau
7b3b1018aa
vars: commit files for clan vars set
...
fixes #2601
2024-12-17 15:56:08 +07:00
DavHau
5d47622a78
build-clan: fix bug where vars generator scripts are built for target system instead of local system
2024-12-16 19:20:17 +07:00
lassulus
0ce51a4e5c
cli test_vars: make output check less sensible to nix output
2024-12-14 13:42:31 +01:00
Qubasa
e490207d12
clan-cli: Rework 'clan ssh' command, improve Tor support.
2024-12-13 00:11:18 +01:00
Jörg Thalheim
7d7e0c0714
fix clan vars for public vars
2024-12-11 16:39:54 +01:00
Jörg Thalheim
7c76b52a8d
run clang-format
2024-12-11 14:38:36 +00:00
DavHau
98ec56b9ee
vars: add test to ensure shared secrets access after --regenerate
...
Ensure that a shared secret can still be accessed by all machines that share it, after a 'clan vars generate --regenerate' has been issued
2024-12-11 15:44:30 +07:00
DavHau
d925f4330d
vars: add test for shared secret not being regenerated
...
see https://git.clan.lol/clan/clan-core/issues/2393
2024-12-11 15:14:44 +07:00
Johannes Kirschbauer
2669d6a2cc
Inventory: init delete patial data
2024-12-10 21:19:04 +01:00
Johannes Kirschbauer
f65e92191a
Inventory: fix persistence
2024-12-10 16:41:40 +01:00
lassulus
3337d7bce6
vars: move ensure_consistent_state into health_check, move into store classes
2024-12-10 11:54:52 +00:00
Qubasa
3cc7511764
clan-cli: Replace HostGroup and MachineGroup with generic AsyncRuntime class. Propagate cmd prefix over thread local. Close threads on CTRL+C
2024-12-09 18:07:23 +01:00
Johannes Kirschbauer
b1ba74a27b
inventory.{cli,api}: use only dictionaries
2024-12-06 18:51:20 +01:00
Jörg Thalheim
9da6036958
tests/sshd: also log what platform we received in the assert
2024-12-06 15:39:35 +00:00
Johannes Kirschbauer
c84515efd2
inventory/api: init smart update for inventory
2024-12-06 11:07:52 +01:00
Johannes Kirschbauer
2d807c69e2
inventory/api: prepare list merging
2024-12-06 11:07:52 +01:00
Johannes Kirschbauer
6a2e331861
inventory/eval: init determine writeability for single inventory options
2024-12-05 16:18:46 +01:00
Johannes Kirschbauer
b72344085a
clan.cli.inventory: init partial write
2024-12-04 17:43:20 +01:00
clan-bot
8da4fceb24
Merge pull request 'Better install instructions for macos' ( #2550 ) from arm64 into main
2024-12-04 16:32:02 +00:00
Jörg Thalheim
d5eb60d904
test_vars: set hostPlatform
2024-12-04 17:25:20 +01:00
lassulus
8b12578c13
test_vars_deployment: fix race condition with multiple VMs on error case
2024-12-04 17:07:36 +01:00
lassulus
acb78d4fb8
test_vars_deployment: pass stdin as DEVNULL to vm
2024-12-04 17:07:36 +01:00
Jörg Thalheim
77d05a6bd6
test_vms_cli: set hostPlatform x86_64-linux
2024-12-04 17:04:12 +01:00
Jörg Thalheim
e80a6c2139
test_flake_with_core: set system explicit
2024-12-04 15:54:00 +01:00
Jörg Thalheim
e499aa0903
getpwnam-preload.c: no longer log shell
2024-12-04 14:57:00 +01:00
Jörg Thalheim
6b8a9ff0dc
skip writing the empty inventory json
2024-12-04 12:14:32 +01:00
DavHau
37ad4eaad5
vars: print() -> log.info()
2024-12-04 14:08:50 +07:00
DavHau
f5226ec7ff
vars: Improve logging for migration
2024-12-04 12:42:03 +07:00
Jörg Thalheim
51526aedbb
rename run_no_output to run_no_stdout
...
we want stderr for some nix commands.
2024-12-03 17:15:28 +01:00
Qubasa
164c621dc0
clan-cli: Fix ignored debug flag in clan vms run, refactor Host.run to use RunOpts
2024-12-03 16:01:51 +01:00
DavHau
66ce80c096
vars: rename: invalidation -> validation
2024-11-29 17:23:31 +07:00
Qubasa
ff8d82c3c6
clan-vm-manager: Fix regression part2
2024-11-28 19:01:46 +01:00
Qubasa
95cb239206
clan-cli: refactor HostGroup._run_local to work with RunOpts
2024-11-28 16:05:51 +01:00
Qubasa
d2719f3179
clan-cli: cmd.run now has its options extracted to a dataclass
2024-11-28 15:26:37 +01:00
Johannes Kirschbauer
126874e62e
CLI/tests: use correct fixture paths
2024-11-28 11:56:12 +01:00
Qubasa
d29f9bf86c
clan-cli: SSH now completely refactored to use dataclasses everywhere
2024-11-28 10:52:14 +01:00
DavHau
61576649ff
vars: make all python tests work in nix sandbox
...
- generate a flake.lock file for each template by copying the clan-core flake.lock and modifying it
- call nix build with --store for tests inside the sandbox
2024-11-27 14:32:02 +07:00
Jörg Thalheim
45dfbf54db
vars: make interface more type-safe
2024-11-26 17:08:26 +01:00
Jörg Thalheim
8eb37903e0
test_vars: mock ask function instead of sys.stdin
2024-11-26 11:56:38 +00:00
Johannes Kirschbauer
446b2592ec
API/serde: add handling for serializing enum classes
2024-11-26 10:44:06 +00:00
DavHau
173436632d
vars: fix migration - secrets end up in public store
2024-11-26 17:02:11 +07:00
Qubasa
27b40849d1
clan-cli: Refactor ssh classes to dataclasses
2024-11-25 19:47:17 +01:00
Qubasa
8866a85765
clan-cli: Refactor ssh part 2, Refactor custom_logger
2024-11-22 22:08:50 +01:00
Qubasa
4104374b76
clan-cli: Refactor ssh folder part 1
2024-11-21 13:02:22 +01:00
DavHau
3f62e143ec
vars: implement invalidation mechanism
...
This adds options `invalidationData` to generators.
`invalidationData` can be used by an author of a generator to signal if a re-generation is required after updating the logic.
Whenever a generator with invalidation data is executed, a hash of that data is stored by the respective public and/or secret backends.
The stored hashes will be checked on future deployments, and a re-generation is triggered whenever a hash doesn't match what's defined in nix.
2024-11-20 16:27:22 +07:00
Jörg Thalheim
b3b72e54cd
remove ssh.id_ed25519 from facts test
...
we have moved this to vars now.
2024-11-19 09:46:14 +00:00
DavHau
64a6f380a6
vars: add test for 'clan vars get'
2024-11-19 13:32:27 +07:00
DavHau
6a373f92d1
tests: improve performance, keep flake.lock between tests
...
- deprecate fixture generate_flake in favor of class ClanFlake
- allow creating flake templates that can be copied, including their state, like git and lock files, in order to avoid expensive re-initialization
2024-11-18 17:01:58 +07:00
Qubasa
250eed0798
clan-cli: upload.py -> Replace rsync with native ssh command
2024-11-15 22:03:47 +07:00
a-kenji
6bb26746f1
pkgs/cli: Fix typo in test fixtures
2024-11-14 15:00:44 +01:00